循环~分数序列求和

题目描述

有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。

输入

N

输出

数列前N项和
复制代码
 1 #include<stdio.h>
 2 int main(){
 3     int N;
 4     scanf("%d",&N);
 5     double sum=0; 
 6     double x[100];         //用来存分子的数组
 7     double y[100];         //用来存分母的数组
 8     x[0]=2.0;              //初始分子
 9     y[0]=1.0;              //初始分母 
10     for(int i=1;i<=N;i++){
11         x[i]=x[i-1]+y[i-1];     //分子
12         y[i]=x[i-1];            //分母
13         //printf("%lf/%lf\n",x[i],y[i]);
14         sum+=x[i-1]/y[i-1];
15     }
16     printf("%.2lf",sum);
17 }
复制代码

solution:

1 注意输出的时候因为按照循环第一组数不是2/1,循环将3/2做第一组数进行的累加,所以最后出书的时候应该将数组中的序号-1 从而将第一组数还原

posted on   罗小罗佳油  阅读(147)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示