数列)C语言"/>
洛谷P1720 月落乌啼算钱(斐波那契数列)C语言
第一种方法 按照公式套 都用double类型保证高精度
pow是数学函数里的求次方函数,sqrt是开根函数
#include<stdio.h>
#include<math.h>
int main(){double n,result;while(scanf("%lf",&n)!=EOF){result=(pow(((1+sqrt(5))/2),n)-pow(((1-sqrt(5))/2),n))/sqrt(5);printf("%.2lf",result);}return 0;
}
第二种方法,找斐波那契数列的递推规律
先定义前三项的数据,根据数列的特点,第三项开始等于前两项的和。
int main()
{double f[50];int n,i;f[0]=0;f[1]=1;f[2]=1; //递归边界条件scanf("%d",&n);for(i=3;i<=n;i++){f[i]=f[i-1]+f[i-2];//开始使用斐波那契数列} printf("%0.2f",f[n]); //输出,保留两位小数return 0;
}
更多推荐
洛谷P1720 月落乌啼算钱(斐波那契数列)C语言
发布评论