So I had a task to create an add function. Then create a multiply function that does not use operators and uses the add function. Now I need to use this multiply function to create a power(exponent) function. This is my attempt so far:
function add(a, b){ return a + b; } // console.log(add(6, 4)) function multiply(first, second){ let i = 0; let answer = 0; while(i < second){ answer += add(first, 0); i += 1; } return answer; } // let m = multiply(10, 4) // console.log(m); function power(x, n){ let i = 0; let answer = multiply(x, x); let total = 1; while(i < n){ total += multiply(x, answer) i += 1; } return total; } let p = power(2, 4) console.log(p)
I seem to be stuck here because any changes I make have not been helpful. Any tips on this one?
Advertisement
Answer
I think what you did there is multiplying n with x^3, and then add 1 to it. Because total equals 1. And answer equals x^2, then multiply(x,answer) will give you x^3. You add x^3 to your total in every iteration, thus total will give you 1+(n*x^3)
I suggest you try this one :
function power(x, n){ let i = 0; let answer = 1; while(i < n){ answer = multiply(x, answer) i += 1; } return answer; }