Fibonacci数列1

来源:百度知道 编辑:UC知道 时间:2024/06/28 05:10:05
题目描述

斐波那契数列(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
那是样例。。

#define N 7
#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;
}

#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]);
}

请使用"搜索答案",可以搜索到成千上万的。

#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<