亦可400 2022-04-19 10:26 采纳率: 0%
浏览 29

循环结构程序设计,,

编写程序,计算序列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;
    }
    
    

    img

    有用请采纳!

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月19日