题目描述:
937.斐波那契数列 (课程9)
题目描述
斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……
在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。
给定一个整数n,求斐波那契数列第n项是多少?
输入格式
一行1个整数n:范围在[1,30]。
输出格式
1个整数
输入/输出例子1
输入:
6
输出:
8
样例解释
注:本练习要求不得使用数组。
代码:
#include<bits/stdc++.h>
using namespace std;
//题目求的就是和,已知斐波那契数列自第三项起每一个数都是前两个数之和求a[n]。
int main(){
int n,a=1,b=1,c;//题目要求不用数组,那就先定义加数一和加数二以及输出结果。
cin>>n;//输入
if(n==1||n==2){
cout<<"1";//特判,斐波那契数列前两项都为一(作为加数)。
}else{
for(int i=0;i<n;i++){
c=a+b;
a=b;
b=c;
}//求值
cout<<c;//输出
}
return 0;
}