斐波那契数列为:0,1,1,2,3,5,8,13,21,… 零号位置为0,1号位置为1,2号位置为1,3号位置为2。 请写一个程序,输入是一个非负整数n(n<=50),输出斐波那契数列第n项。 输入输出格式 输入格式 一个正整数n 输出格式 一个正整数
时间: 2024-02-12 22:06:36 浏览: 121
以下是用 C++ 编写的程序,可以实现上述功能:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int a = 0, b = 1, c;
for (int i = 0; i < n; i++) {
c = a + b;
a = b;
b = c;
}
cout << a << endl;
return 0;
}
```
程序首先读入一个非负整数 n,然后使用循环计算斐波那契数列的第 n 项。我们使用三个变量 a、b、c 分别表示斐波那契数列的前两项和当前项,初始化 a 为 0,b 为 1。在循环中,我们从第 2 项开始,计算当前项 c 为前两项的和,然后将 a 赋值为上一项的值,b 赋值为当前项的值,继续循环。当循环结束时,a 就是斐波那契数列的第 n 项,输出即可。
相关问题
斐波那契数列为:0,1,1,2,3,5,8,13,21,… 其中的零号位置为0,1号位置为1,2号位置为1,3号位置为2,之后每项是前两项的和。 请写一个程序,输入是一个正整数n,倒序地输出斐波那契数列n号位置到0号位置的数。 输入输出格式 输入格式 一个正整数n。数据范围:0<=n<=50 输出格式 一行,包含n+1个整数,由空格隔开
好的,以下是 Python 代码实现:
```python
n = int(input()) # 输入正整数n
fib = [0, 1] # 斐波那契数列的前两项
for i in range(2, n+1):
fib.append(fib[i-1] + fib[i-2]) # 计算斐波那契数列的第i项
for i in range(n, -1, -1):
print(fib[i], end=' ') # 倒序输出斐波那契数列n号位置到0号位置的数
```
例如,如果输入 `5`,则输出结果为:
```
5 3 2 1 1 0
```
2、斐波那契数列为: 1、1、2、3、5、8、13、21、34、 .....其前两项为1,从第3项开始,后面每项等于前两项之和。请输出该数列的前20项,且每行输出5个。(用列表存储数列)
下面是使用Python语言实现输出斐波那契数列前20项的代码:
```python
fibonacci = [1, 1]
for i in range(2, 20):
fibonacci.append(fibonacci[i-1] + fibonacci[i-2])
for i in range(0, 20, 5):
print(fibonacci[i:i+5])
```
输出结果如下:
```
[1, 1, 2, 3, 5]
[8, 13, 21, 34, 55]
```
阅读全文