编写程序,计算序列1-2/3+3/5-4/7+5/9-6/11+...+(-1)n-1n/(2n-1)的前n 项之和,要求n 为从键盘上获取的10-20 之间的正整数。求和结果用输出函数查看,保留三位小数。
2条回答 默认 最新
czy1219 2022-04-19 11:11关注代码如下:
#include <iostream> #include<iomanip> using namespace std; void function(int n) { double sum=1.0; cout<<"S="<<1; for(int i=2;i<=n;i++) { if(i%2==0) { cout<<"-"; sum-=1.0*i/(2*i-1); }else{ cout<<"+"; sum+=1.0*i/(2*i-1); } cout<<i<<"/"<<2*i-1; } cout<<"="; cout<<fixed<<setprecision(3)<<sum<<endl; //保留3位小数 } int main() { int n; cout<<"请输入:"<<endl; while(true) { cin>>n; if(n<10||n>20) cout<<"输入有误!请重新输入:"<<endl; else{ function(n); break; } } return 0; }
有用请采纳!
解决 无用评论 打赏 举报 编辑记录