:2/1,3/2,5/3,8/5,13/8,21/13……求这个数列的前20项之和,分别用while语句和do-while语句两种方法
时间: 2024-11-10 18:26:22 浏览: 229
这个数列实际上是著名的斐波那契数列,每一项都是前两项的和。斐波那契数列通常从0和1开始,但是你给出的数列是从第三个数字开始的,即2、3、5、8、13、21...。为了计算前20项之和,我们可以编写两种循环结构的程序:
**使用 while 语句:**
```python
# 初始化前两个数
a, b = 2, 3
sum_ = a + b # 初始和
# 循环次数为20(因为包含第20项)
i = 2
while i < 20:
sum_ += b
c = a + b
a, b = b, c # 更新值
i += 1
print(f"前20项之和:{sum_}")
```
**使用 do-while 语句(假设 Python 支持类似语法,实际上 Python 没有内置的 do-while 结构,需要自定义实现):**
```python
# 初始化前两个数和计数器
a, b = 2, 3
sum_, i = a + b, 2
# 类似于 while 循环,但先执行一次再判断条件
do {
sum_ += b
c = a + b
a, b = b, c # 更新值
print(f"Iteration {i}: {b}") # 可视化当前项
i += 1
} while (i < 20)
print(f"前20项之和:{sum_}")
```
请注意,Python 中没有直接的 do-while 语句,上面的示例是将 do-while 结构转换成 while 循环的一种模拟。
相关问题
有一分数序列:2/1, 3/2, 5/3, 8/5, 13/8, 21/13……求岀这个数列的前20项之和。
这个数列被称为斐波那契数列的扩展,可以使用循环来计算前20项的和。具体步骤如下:
```python
# 初始化前两项
a, b = 2, 1
# 初始化和为前两项之和
total = a + b
# 循环计算前20项
for i in range(2, 20):
# 计算下一项
a, b = a + b, a
# 累加到总和中
total += a / b
# 输出结果
print("前20项之和为:", total)
```
Python有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13……求出这个数列的前 20 项之和。
这是一个斐波那契数列的变形,可以用循环来计算前 20 项的和。
代码如下:
```python
a, b = 2, 1
sum = 0
for i in range(20):
sum += a / b
a, b = a + b, a
print(sum)
```
输出结果为:32.66026079864164
阅读全文
相关推荐
















