C++实现斐波那契数列/青蛙跳台阶
2015-09-03 18:49
661 查看
题目:写一个函数,输入n,求斐波那契(Fibonacci)数列的前n项。
斐波那契数列的定义如下:
(1)方法1:循环的实现方法:
扩展:斐波那契数列的变种
一致青蛙一次可以跳上一级台阶,也可以跳上两级台阶。求该青蛙跳上一个n级的台阶共有多少种跳法?
斐波那契数列的定义如下:
(1)方法1:循环的实现方法:
#include <iostream> using namespace std; int main() { int n(20); int *fabci; fabci=new int ; fabci[0]=1; fabci[1]=1; for (int i=2;i!=n;i++) fabci[i]=fabci[i-1]+fabci[i-2]; for (int i=0;i!=10;i++) cout<<fabci[i]<<" "; return 0; }(2)方法2
#include <iostream> using namespace std; int num(50); int *data=new int[num]; //int *fabci=new int[num]; int flop(int n) { if(n==0||n==1) return 1; else { if(data ==0) data =data[n-1]+data[n-2]; return data ; } } int main() { //int num(50); //int *data=new int[num]; memset(data,0,num*sizeof(data)); data[0]=1; data[1]=1; for(int i=0;i!=10;i++) cout<<flop(i)<<" "; return 0; }VS平台下的实验结果如下:
扩展:斐波那契数列的变种
一致青蛙一次可以跳上一级台阶,也可以跳上两级台阶。求该青蛙跳上一个n级的台阶共有多少种跳法?
相关文章推荐
- c++ primer 学习之路 一
- C++ Primer 学习笔记_98_特殊工具与技术 --优化内存分配
- C++ Primer 学习笔记_99_特殊工具与技术 --优化内存分配[续1]
- Effective C++——条款17(第3章)
- C++基础---string类的clear/erase/pop_back
- C++基础---string类的find/find_first_of/find_first_not_of/rfind/find_last_of/find_last_not_of
- C++基础---string类的operator==/operator!=/operator</operator<=/operator>/operator>=/compare
- C++函数中那些不可以被声明为虚函数的函数
- C++基础---string类的operator=/assign
- C语言中链表怎么删除结点?
- C语言中链表怎么删除结点?
- C++基础---string类的operator<</operator>>/getline
- Trie
- C++基础---string类的capacity/max_size/size/length/empty/reserve/resize
- C++基础--string类的operator[]/at/back/front
- C++基础---string类的data/c_str/copy
- C++基础---string类的构造函数
- 来看看C语言的-1>1并且小有1的问题
- C++基础---字符串(string型字符串)
- c语言实现顺序二叉树的非递归的三种遍历算法