小试循环

来源:互联网 发布:淘宝霸王条款是什么 编辑:程序博客网 时间:2024/04/29 08:02
所有的小题都大同小异,用函数写出来的,最后在主函数中调用来实现,知道现在写的还存在很多的问题。我会一点一点的来改善。
/*【项目3-小试循环】   写出实现下面求解任务的程序【提示:m是一个变量,在程序中输入】    (1)求1到m的平方和    (2)求1到m间所有奇数的和    (3)求1到m的倒数和,即1+1/2 +1/3 +1/4 +...+1/m     (4)求值:1-1/2 +1/3 -1/4 +...+(-1)^(m+1) ×1/m     (5)求m!,即      1×2×3×...×m */#include<iostream>#include<cmath>using namespace std;int square(int m);int OodNum(int m);float BackNum(int m);float AddNum(int m);int Factorial(int m);int square(int m){int i,sum=0;for(i=1;i<=m;i++){int n=i*i;sum=sum+n;}return sum;}int OodNum(int m){int i,sum=0;for(i=1;i<=m;i++){if(i%2!=0)sum=sum+i;}return sum;}float BackNum(int m){float i=1.0,sum=0;while(i<=m){sum+=1/i;i++;}return sum;}float AddNum(int m){float sum1=0,sum2=0;float i;for(i=1;i<=m;i++){if((int)i%2==0)//类型强制转换sum1+=1/i;elsesum2+=1/i;}return sum2-sum1;}int Factorial(int m){int i=1,sum=1;do{sum=sum*i;i++;}while(i<=m);return sum;}void main(){int m;cout<<"输入一个数m="<<endl;cin>>m;cout<<"1到m的平方和为:"<<square(m)<<endl;cout<<"1到m间所有奇数的和为:"<<OodNum(m)<<endl;cout<<"1到m的倒数和为:"<<BackNum(m)<<endl;cout<<"1-1/2 +1/3 -1/4 +...+(-1)^(m+1) ×1/m为:"<<AddNum(m)<<endl;cout<<"m的阶乘为:"<<Factorial(m)<<endl;}

0 0
原创粉丝点击