斐波那契数列算法

网址:https://www.cnblogs.com/abyss1114/p/7272657.html
1.递归算法
#include
using namespace std;

long Fibonacci(int n) {
if (n == 0)
return 0;
else if (n == 1)
return 1;
else
return Fibonacci(n - 1) + Fibonacci(n-2);
}

int main() {
cout << “Enter an integer number:” << endl;
int N;
cin >> N;
cout << Fibonacci(N) << endl;
system(“pause”);
return 0;
}
2.非递归算法
#include
using namespace std;

long Fibonacci(int n) {
if (n <= 2)
return 1;
else {
long num1 = 1;
long num2 = 1;
for (int i = 2;i < n - 1;i++) {
num2 = num1 + num2;
num1 = num2 - num1;
}
return num1 + num2;
}
}

int main() {
cout << “Enter an integer number:” << endl;
int N;
cin >> N;
cout << Fibonacci(N) << endl;
system(“pause”);
return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43361844/article/details/87341771