斐波那契数列,即1、1、2、3、5、8、13、21、34、55……,规律是从第三项开始,每个数都是前两个数之和。用编程实现求它的第n项,代码如下:
#include"E:\C++ h\big_number_f.h"
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
string a="1",b="1",c;
for(int i=2;i<=n;i++){
c=plus_pos(a,b);
a=b,b=c;
}
cout<<a;
return 0;
}
函数版:
#include"E:\C++ h\big_number_f.h"
#include<iostream>
using namespace std;
string f(int x){
string a="1",b="1",c;
for(int i=2;i<=x;i++){
c=plus_pos(a,b);
a=b,b=c;
}
return a;
}
int main(){
int n;
cin>>n;
cout<<f(n);
return 0;
}
其中用到的高精度数函数见此博客:用string容器实现大整数比较、加、减、乘和除(用减法实现)(函数版)。(地址:https://blog.csdn.net/weixin_41461277/article/details/84843656)(注:E:\C++ h\big_number_f.h是高精度函数代码在我的计算机中存放的路径)
速度:n=10000时不到一秒;n=100000时约需要13秒。
欢迎转载,但请在文章中附加上本文链接:https://blog.csdn.net/weixin_41461277/article/details/84937945 。