处于美铼 发表于 2021-10-26 18:31:44

分序列求和

【问题描述】编写函数double FUN(double n)计算以下分数序列的前n项之和,其中参数n由主函数输入,FUN函数的返回值在主函数中输出。

2/1,3/2,5/3,8/5,13/8,21/13,....

【输入形式】正整数n

【输出形式】分数序列的和(浮点数,精确到小数点后4位)

【样例输入】99

【样例输出】160.4849

【提示】因为运行时间的限制,请不要使用递归函数。注意int类型存储越界的问题。

jhq999 发表于 2021-10-28 10:52:50


          //int n=99;
          double fz=0.0,fm=0.0,fz_1=1,fm_1=1,sum=0;
                for (int i = 0; i < n; i++)
                {
                        fz=fm_1+fz_1;
                        fm=fz_1;
                        //printf("(%.0lf/%.0lf),",fz,fm);
                        sum+=fz/fm;
                        fz_1=fz;
                        fm_1=fm;
                }
                //printf("%.4lf",sum);
               return sum;
页: [1]
查看完整版本: 分序列求和