1.5 编程基础之循环控制_17斐波那契数列
斐波那契数列是指这样的数列: 数列的第一个和第二个数都为 1,接下来每个数都
等于前面 2 个数之和。
给出一个正整数 k,要求菲波那契数列中第 k 个数是多少。
输入
输入一行,包含一个正整数 k。(1 <= k <= 46)
输出
输出一行,包含一个正整数,表示菲波那契数列中第 k 个数的大小
样例输入:19
样例输出:4181
C++代码一:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int k,a=1,b=1,ans;
cin>>k;
if(k<=2) ans=1;
else
{
for(int i=3;i<=k;i++)
{
ans=a+b;
a=b;
b=ans;
}
}
cout<<ans<<endl;
return 0;
}
C++代码二:
#include<iostream>
using namespace std;
int main()
{
int x1=1,x2=1;
int x3;
int i;
int k;
cin>>k;
if( k==1 || k==2)
{
cout<<1<<endl;
return 0;
}
for(i=1;i<=k-2;i++)
{
x3=x1+x2;
x1=x2;
x2=x3;
}
cout<<x3<<endl;
return 0;
}
C++代码三:
#include <iostream>
using namespace std;
unsigned long long ans[10010]={0};
int main( void )
{
int n;
cin>>n;
ans[1]=1;
ans[2]=1;
//递推 顺推
for(int i=3;i<=n;i++)
{
ans[i]=ans[i-1]+ans[i-2];
}
cout<<ans[n]<<endl;
return 0;
}
作业:选择其中3题
1204:爬楼梯
1.1.3编程基础之算术表达式与顺序执行(20题)
2.1.5 编程基础之循环控制_35求出e的值
3、1.5 编程基础之循环控制_42画矩形
4、1.4 编程基础之逻辑表达式与条件分支_18点和正方形的关系
5、2.3 基本算法之递归变递推
6、【算法1-4】递推与递归
7、1190:上台阶
8、1192:放苹果
9、1089:数字反转
10、1953:【11NOIP普及组】数字反转
python3代码:
k=int(input())
a=b=1
if k<3:
print(1)
else:
for i in range(3,k+1):
c=a+b
b=a
a=c
print(c)
相关的题目:
2753:菲波那契数列
2.2 基本算法之递归和自调用函数 1755:菲波那契数列
2.3 基本算法之递归变递推 1760:菲波那契数列(2)
2758:菲波那契数列(2)
1159:斐波那契数列
1808:斐波那契数列
电子学会青少年等级考试C语言(二级)
电子学会 全国青少年软件编程等级考试(三级--八级)
电子学会 青少年编程等级考试 C语言 1级-10级 学习资料集