首页 > 试题广场 >

有一个分数序列 21,32,53,85,13

[问答题]

有一个分数序列

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

求出这个数列的前20项之和。

推荐

#include<stdio.h>

int main( )

{

int i,n=20;

double a=2,b=1,s=0,t,

for(i=1;i<=n;i++)

{

s=s+a/b;

t=a,

a=a+b,

b=t,

}

printf('sum=%16.10f\n",s);

return 0;

}


发表于 2018-03-25 10:57:10 回复(0)
#include <stdio.h>

int main() {
//    有一个分数序列 2/1,3/2,5/3,8/5,13/8,21/13,...
//    求出这个数列的前20项之和
    double sum = 0;
    double a,b,c;
    a = 2;
    b = 1;
    c = 0;
    for(int i = 1;i<=20;i++){
            sum+=a/b;
            c=a;
            a+=b;
            b=c;
    }
    printf("这个数列的前20项之和为:%.2lf",sum);
    return 0;
}

发表于 2022-09-23 16:57:30 回复(0)
#include<stdio.h> 
int main(){
	float m=1,n=1,temp,sum=0;
	for(int i=0;i<20;i++){	//由数列规律可得 
		temp=n;
		n=m+n;
		m=temp;
		sum+=(n/m);		//求数列的前20项和 
	}
	printf("数列的前20项和为:%f",sum);
	return 0;
}

发表于 2021-01-16 13:56:32 回复(0)
#include <stdio.h>
int main(){
 int store[21];
 double store2[20];
 for(int i = 0; i < 21; i ++){
  store[i] = 0;
 }
 for(int i = 0; i < 20; i ++){
  store2[i] = 0;
 }
 store[0] = 1;
 store[1] = 2;
 double cnt = 0;
 for(int i = 0; i < 20; i ++){
  store[i + 2] = store[i + 1] + store[i];
  store2[i]= (double)(store[i + 1]) /(double) (store[i]);
 }
 for(int i = 0; i < 20; i ++){
  cnt += store2[i];
 }
 printf("%lf", cnt);
}
发表于 2019-12-22 21:28:44 回复(0)