Pow(x, n)

来源:互联网 发布:c语言如何使用graphics 编辑:程序博客网 时间:2024/06/08 05:28

Implement pow(xn).

//此题思路,第一种最简单的迭代,第二种基本的递归,第三种,分治法。

// x^n = x^(n/2)*x^(n/2)*x(n%2)  

//再者本题注意的细节,x=0,n=0,n负数等

double pow(double x, int n) {            double temp;    if(x == 0)return 0;    if(n==0)return 1;    if (n==1){return x;}if(n == -1){    return 1/x;}if (n%2 == 0)//偶数{temp = pow(x,n/2);return temp*temp;}else{temp = pow(x,n/2);if(n>0)return temp*temp*x;elsereturn temp*temp*1/x;}    }