Fibonacci数列1
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Fibonacci数列1相关的知识,希望对你有一定的参考价值。
题目描述
斐波那契数列(Fibonacci)是指头两项为1,之后每项为前两项之和。
F(1) = F(2) = 1;
F(N) = F(N-1) + F(N -2) (N > 2)
输入N,请你求出不小于N的最小Fibonacci数列中的数。例如:
Fibonacci的前八个数为:1,1,2,3,5,8,13,21。
如果输入9,在数列中,不小于9的最小数为13.同理输入7,则结果应为8,输入15,结果为21
输入
输入一个正整数N(N > 2)
输出
输出一个不小于整数N的最小斐波那契数列中的数。
输出结束后需换行。
样例输入
7
样例输出
8
那是样例。。
#include <stdio.h>
int main(int argc, char *argv[])
int Fib1 = 1, Fib2 = 1;
while ( Fib2 < N)
int temp = Fib2;
Fib2 += Fib1;
Fib1 = temp;
printf("%d\\n", Fib2);
return 0;
参考技术A #include<stdio.h>
void main()
long f[100],i=2,n;
f[1]=1;
f[2]=1;
scanf("%ld",&n);
while(f[i]<n)
++i;
f[i]=f[i-1]+f[i-2];
printf("%ld\n",f[i]);
参考技术B 请使用"搜索答案",可以搜索到成千上万的。 参考技术C #include <iostream.h>
void main()
int n;
cout<<"请输入n=";
cin>>n;
int i;
int *a=new int(n+1); //动态构建一维数组
a[1]=a[2]=1;
for(i=3;i<=n;i++) //输入Fibonacci数列
a[i]=a[i-1]+a[i-2];
cout<<a[i]<<" ";
cout<<endl;
for(i=1;i<=n;i++) //找符合要求的数
if(a[i]>=n)
cout<<"所要求得的数为"<<a[i];
break;
参考技术D #include<iostream.h>
void main()
long int f1,f2;
int i;
f1=1;f2=1;
for(i=1;i<=10;i++)
printf("%12ld %12ld",f1,f2);
if(i%2==0)printf("\n");
f1=f1+f2;
f2=f2+f1;
以上是关于Fibonacci数列1的主要内容,如果未能解决你的问题,请参考以下文章