Question: Question to be done in C language Use the three recursive functions given below for raising a number to a power to compute (1.12)631. For
Question to be done in C language Use the three recursive functions given below for raising a number to a power to compute (1.12)631. For each function, your program should print out the result of exponentiation and the number of times the function is called. Also print the average execution times.





double powr(double a, int n) { if (n == 0) return 1; else return a* powr(a,n-1) } solution 2 int fpow(double a, int n) , n 0) return 1; * { if (n else * if (n%2 == 0) return fpowia,n/2) fpow(a,n/2); else return a * fpow(a,n/2) a/ fpow(a,n/2): } } Is it a better solution??? solution 3 int fpow(double a, int n) { if (n == 0) return 1; else b = fpow(a, n/2); if (n%2 == 0) return b*b; else return a * b * b; } } int fpow(double a, int n) { if (n == 0) return 1; ; else { b = fpow(a, n/2); if (n%2 == 0) return b *b; else return a*b b; } } int fpow(double a, int n) { if (n return 1: else { == 0) * if (n%2 == 0) return fpow(a,n/2) * fpow(a,n/2); return a * fpow(a,n/2) * fpow(a,n/2); else } } double powr(double a, int n) { if (n == 0) return 1; else return a*powr(a, n-1) }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
