c语言 斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13, 这个数列从第三项开始,每一项都等于前两项之和.
答案:2 悬赏:70 手机版
解决时间 2021-03-21 18:22
- 提问者网友:抽煙菂渘情少年
- 2021-03-20 23:49
c语言 斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13, 这个数列从第三项开始,每一项都等于前两项之和.
最佳答案
- 五星知识达人网友:孤独入客枕
- 2021-03-21 00:37
参考一下代码
a2-a1=0
a3-a2=1
.
an-a(n-1)=n-2
以上等式相加得
an-a1=0+1+.+n-2
an-1=(0+n-2)*(n-1)/2
an=(n-2)*(n-1)/2+1
an=(n^2-3n+4)/2
an=n^2/2-3n/2+2
s20=1^2/2-3*1/2+2+2^2/2-3*2/2+2+.+20^2/2-3*20/2+2
=(1^2+2^2+.+20^2)/2-3(1+2+.+20)/2+2*20
=[20*(20+1)(2*20+1)/6]/2-[3*(1+20)*20/2]/2+40
=35*41-15*21+40
=1160
a2-a1=0
a3-a2=1
.
an-a(n-1)=n-2
以上等式相加得
an-a1=0+1+.+n-2
an-1=(0+n-2)*(n-1)/2
an=(n-2)*(n-1)/2+1
an=(n^2-3n+4)/2
an=n^2/2-3n/2+2
s20=1^2/2-3*1/2+2+2^2/2-3*2/2+2+.+20^2/2-3*20/2+2
=(1^2+2^2+.+20^2)/2-3(1+2+.+20)/2+2*20
=[20*(20+1)(2*20+1)/6]/2-[3*(1+20)*20/2]/2+40
=35*41-15*21+40
=1160
全部回答
- 1楼网友:归鹤鸣
- 2021-03-21 02:02
#include "stdio.h"
int main(void){
int a,b,i,T,n;
while(1){
printf("Input T(int 00 && T<11)
break;
printf("Error, redo: ");
}
while(T--){
while(1){
printf("Input n(int 00 && n<21){
for(a=b=1,i=2;i a+=b,b=a-b;
break;
}
printf("Error, enter again n: ");
}
printf("%d ",a);
}
return 0;
}
int main(void){
int a,b,i,T,n;
while(1){
printf("Input T(int 0
break;
printf("Error, redo: ");
}
while(T--){
while(1){
printf("Input n(int 0
for(a=b=1,i=2;i
break;
}
printf("Error, enter again n: ");
}
printf("%d ",a);
}
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯