noi 1.5 17 菲波那契数列
- 描述
- 菲波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和。
- 给出一个正整数k,要求菲波那契数列中第k个数是多少。
- 输入
- 输入一行,包含一个正整数k。(1 <= k <= 46)
- 输出
- 输出一行,包含一个正整数,表示菲波那契数列中第k个数的大小
- 样例输入
- 19
- 样例输出
- 4181
- 题意
- 给出一个k,求数列中第k个数是多少,数列中第1,2位的数是1,后一位是前两位的和。
- 思路
- 使用for循环,由于前两位已经给出所以k-2。设一个a,b,c,先b=b+a。再用c调换a和b的数值,每循环一次就向前一位,循环的过程中每次让新的数等于前两个数。
- 代码实现
using namespace std;
int main(){
int k,a=1,b=1,c;
cin>>k;
k=k-2;
for(int i=0;i<=k;i++){
b=a+b;//b=b+a。再用c调换a和b的数值,来保持循环。
c=a;//a,b调换位置。因为循环每次都只能往一个值上加。
a=b;
b=c;
}
cout<<b;//最后循环会多出一次所以输出上一次的a。
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现