I've been tasked to come up with a recursive solution to

X^n = (X^(n/2))^ 2 if n is even

X^n = (X * ((X^(n/2))^2)) if n is odd

now here's the function i've written so far

where baseValue = X and expPower = n and are values entered in by the user.Code:double RecursivePower3(double& baseValue, double expPower, double powerValue){ if (expPower == 0) return 1; if (expPower == 2) return baseValue; if (fmod(expPower, 2) == 0){ //then it's even powerValue = pow(pow(baseValue,floor(expPower / 2)), 2); return powerValue; } else{ powerValue = (baseValue * pow(pow(baseValue,floor(expPower / 2)), 2); return powerValue; } }

can anyone tell me how this can be solved recursively?