递归算法 sum(n)=1-1/2+1/3-1/4......(其中n>0)

/*编写一个递归函数完成以下公式的运算*/ //sum(n)=1-1/2+1/3-1/4……(其中n>0) #include <iostream> using namespace std; //非递归算法 float FUN(int n) { int m=1,temp=1; float total=0.0; while(m!=n+1) { total=total+1.0/m*temp; //注意要写成1.0否则返回值是整型 temp=temp*(-1); m++; } return total; } //递归算法 float Fun(int n) { if(n==1) return 1; else if(n%2==0) { return Fun(n-1)-1.0/n; } else return Fun(n-1)+1.0/n; } int main() { int a=5; cout<<Fun(a)<<endl; cout<<FUN(a)<<endl; return 0; }

    原文作者:递归算法
    原文地址: https://blog.csdn.net/xtayaitak/article/details/5930847
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞