C++用递归实现斐波那契数列
【题目描述】
菲波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和。
给出一个正整数a,要求菲波那契数列中第a个数是多少。
【输入】
第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a(1≤a≤20)。
【输出】
输出有n行,每行输出对应一个输入。输出应是一个正整数,为菲波那契数列中第a个数的大小。
【输入样例】
4 5 2 19 1
【输出样例】
5 1 4181 1
来自一枚刚学不久小蒟蒻,
第一次发博客;
记得zhx说过:
“要想理解递归,就要先理解递归”
emmm真是一点毛病都没有啊!!!
递归就是一个函数,
不停的调用自己,
为了防止死循环,
需要加特判;
递归主要是找到那个类似公式的东西(我也不知道叫啥);
然后写一个函数,调用自己;
1 #include<iostream> 2 using namespace std; 3 int fib(int); 4 int main() 5 { 6 int n,a[200]; 7 cin>>n; 8 for(int i=1;i<=n;i++) 9 cin>>a[i]; 10 for(int i=1;i<=n;i++) 11 { 12 cout<<fib(a[i])<<endl; 13 } 14 return 0; 15 } 16 int fib(int x) 17 { 18 if(x<=0) return 0; 19 if(x<=2) return 1; 20 return fib(x-1)+fib(x-2); 21 }
每日打卡O(∩_∩)O
看不见我看不见我看不见我
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从零实现富文本编辑器#3-基于Delta的线性数据结构模型
· 记一次 .NET某旅行社酒店管理系统 卡死分析
· 长文讲解 MCP 和案例实战
· Hangfire Redis 实现秒级定时任务,使用 CQRS 实现动态执行代码
· Android编译时动态插入代码原理与实践
· 使用TypeScript开发微信小程序(云开发)-入门篇
· 没几个人需要了解的JDK知识,我却花了3天时间研究
· C#高性能开发之类型系统:从 C# 7.0 到 C# 14 的类型系统演进全景
· 管理100个小程序-很难吗
· 在SqlSugar的开发框架中增加对低代码EAV模型(实体-属性-值)的WebAPI实现支持