--- id: 5900f37d1000cf542c50fe8f challengeType: 5 title: 'Problem 16: Power digit sum' forumTopicId: 301791 --- ## Description
215 = 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26. What is the sum of the digits of the number 2`exponent`?
## Instructions
## Tests
```yml tests: - text: powerDigitSum(15) should return a number. testString: assert(typeof powerDigitSum(15) === 'number'); - text: powerDigitSum(15) should return 26. testString: assert.strictEqual(powerDigitSum(15), 26); - text: powerDigitSum(128) should return 166. testString: assert.strictEqual(powerDigitSum(128), 166); - text: powerDigitSum(1000) should return 1366. testString: assert.strictEqual(powerDigitSum(1000), 1366); ```
## Challenge Seed
```js function powerDigitSum(exponent) { return true; } powerDigitSum(15); ```
## Solution
```js function powerDigitSum(exponent) { const bigNum = [1]; let sum = 0; for (let i = 1; i <= exponent; i++) { let count = bigNum.length + 1; let overflow = 0; for (let j = 0; j < count; j++) { let digit = bigNum[j] || 0; digit = 2 * digit + overflow; if (digit > 9) { digit -= 10; overflow = 1; } else { overflow = 0; } bigNum[j] = digit; } } bigNum.forEach(function(num) { return sum += num; }); return sum; } ```