中易网

输入一个数据n,计算斐波那契数列(Fibonacci)的第n个值。

答案:6  悬赏:60  
解决时间 2021-01-11 21:25
输入一个数据n,计算斐波那契数列(Fibonacci)的第n个值。
最佳答案
写一个短的,用递推的:(速度比较快)
int fibo(int n){
if(n<=2)return 1;
int a=1, b=1, c;
for(int i = 3; i<=n; c=a+b,a=b,b=c,i++);
return c;
}

还有一种数学方法:(直接出解,但可能有精度问题)
int fibo(int n){
return (int)((pow((1+sqrt(5))/2, (double)n)+pow((1-sqrt(5))/2, (double)n))/sqrt(5));
}
全部回答
void main()
{
int n;
scanf("%d",&n);
printf("%d",fib(n));
}
int fib(n)
{
if(n==1 || n==2)
return 1;
else return fib(n-1)+fib(n-2);
}
关键是递归调用追问用java做的
我暂时保留我的看法!
直接用递推的方法来解决
int main()
{
int fib[100] = {1, 1};
int n, i;
scanf("%d", &n);
if (n > 2)
{
for (i = 2; i < n; i++)
fib[i] = fib[i-2] + fib[i-1];
}
printf("fib = %d\n", fib[n-1]);
}
eger
n=inputbox("请输入n的值:")
redim a(1 to n)
call Fibonacci a()
sub Fibonacci(a() as long)
dim i as integer,n as integer
n=ubound(a)
a(1)=1
a(2)=1
for i=3 to n
a(i)=a(i-1)+a(i-2)
next i
end sub
import java.util.Scanner;
public class Fibonacci {
private int fibonacciArrLength = 0;// 斐波那契数组长度
public boolean setFibonacciArrLength() {
Scanner in = new Scanner(System.in);
boolean b = false;
try {
fibonacciArrLength = in.nextInt();
if (fibonacciArrLength == 0) {
System.out.println("长度不能为0");
b = true;
}
} catch (java.util.InputMismatchException e) {
System.out.println("error 请输入数字");
b = true;
}
return b;
}
public int[] fibonacciArr() {
int[] fibonacciArr = new int[fibonacciArrLength + 1];
for (int i = 0; i < fibonacciArr.length; i++) {
if (i < 2) {
fibonacciArr[i] = i;
} else {
fibonacciArr[i] = fibonacciArr[i - 1] + fibonacciArr[i - 2];
}
}
return fibonacciArr;
}
public static void main(String[] args) {
Fibonacci fi = new Fibonacci();
boolean pd = false;
do {
System.out.print("请输入数列长度");
pd = fi.setFibonacciArrLength();
} while (pd);
System.out.println("长度为" + fi.fibonacciArrLength + "的数组:");
int[] arr = fi.fibonacciArr();
for (int i = 1; i < arr.length; i++) {
System.out.print(arr[i] + "\t");
}
}
}
copy以后直接运行就行了 javaSE 1.6
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
小伙第7次高考没考好
如家快捷酒店(南戴河旅游中心店)地址有知道
跪求大神ios8云墙在哪可以下载?可以发给我吗
我昨天科目二挂了,什么时候才可以考
小草咏诗忬怀的500字作文大全
"世誉不足慕,唯仁为纪纲"的意思
三和停车场(三和停车场)地址在什么地方,想过
大哥长江长,是芜湖一个小区的名字,属于中山
你灵魂的欲望是你命运的先知 出处和意思
“花”在第五个字的诗句
在游戏联众世界新版保皇威海规则中‘踢’是什
以前在贴吧上看到的一张图片,挺唯美的,是一
皇家赞礼号游轮票价10月21详情
江西有哪些红色旅游?
excel一列只把整数相加,小数除外,文字除外,
推荐资讯
白色校服上有大面积油点..怎么洗掉
有人认为德国“要么拷问世界,要么拷打世界”
歌词有小美爱我的
长歌行意思简短
张姓男孩名字大全单字都有哪些不错的么
想问下一下DNF中相较不吃钱的职业有哪些
6(x-15)=1440
简历可以发pdf格式吗?
采荔枝花易死蜂
灯芯草10克+淡竹叶10克+谷芽10克+麦芽10克+房
蜂蛹冷冻半个月变黑还可以吃吗
求一个仙剑奇侠传6的激活码(能用的),通关
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?