计算斐波那契数列第n项 C++
时间: 2024-10-11 18:10:21 浏览: 33
Dev-C++求斐波那契数列第n项
斐波那契数列是一个经典的数学序列,其中每个数字都是前两个数字之和,通常从0和1开始。在C++中计算第n项斐波那契数,可以使用循环、递归或者动态规划等方法。这里我们提供一种常见的迭代方法:
```cpp
#include <iostream>
// 使用循环计算斐波那契数
int fibonacci(int n) {
if (n <= 0) {
std::cout << "Invalid input! Fibonacci sequence starts from 1." << std::endl;
return -1; // 返回错误值
}
else if (n == 1 || n == 2) {
return n - 1; // 第1和第2项分别为0和1
}
int prev = 0;
int current = 1;
for (int i = 2; i < n; ++i) {
int next = prev + current;
prev = current;
current = next;
}
return current;
}
int main() {
int n;
std::cout << "Enter a positive integer to compute the nth Fibonacci number: ";
std::cin >> n;
int result = fibonacci(n);
if (result != -1)
std::cout << "The " << n << "th Fibonacci number is: " << result << std::endl;
return 0;
}
```
在这个程序里,用户输入一个正整数n,然后函数`fibonacci`会计算并返回第n个斐波那契数。如果输入非正数,它会显示错误消息。
阅读全文