编写程序,求:s=1+1/2+1/3+...1/n (n由键盘输入)(注:分别用利用while循环和do-while循环结构求解)
时间: 2024-04-27 13:16:29 浏览: 31
编写程序求解s=1+1/2+1/3+...+1/n,可以使用while循环和do-while循环结构来实现。下面是两种不同的实现方式:
1. 使用while循环结构求解:
```python
n = int(input("请输入一个正整数n:"))
s = 0
i = 1
while i <= n:
s += 1 / i
i += 1
print("s的值为:", s)
```
2. 使用do-while循环结构求解:
```python
n = int(input("请输入一个正整数n:"))
s = 0
i = 1
while True:
s += 1 / i
i += 1
if i > n:
break
print("s的值为:", s)
```
相关问题
从键盘输入一个正整数n, 编写程序,计算S=1+1/3-1/5+1/7-1/9+..+1/n的结果。
可以使用循环来计算这个表达式的值,具体实现如下:
```
n = int(input("请输入一个正整数n:"))
S = 0
flag = 1
for i in range(1, n+1, 2):
S += flag * 1/i
flag = -flag
print("S的值为:", S)
```
代码中,首先使用`input()`函数从键盘读入一个正整数n,然后使用循环计算表达式的值。循环中,`range(1, n+1, 2)`表示从1开始,每次加2,直到n(因为表达式中只有奇数项),`flag`用来记录当前项的符号,每次循环结束后取反。最后输出计算结果。
编写程序计算 S = 1/12+1/22+1/32+ ......+1/n2的值,n 由 键盘输入。
可以使用循环语句计算 S 的值,具体实现代码如下:
```python
n = int(input("请输入 n:"))
S = 0 # 初始化 S 的值为 0
# 循环计算 S 的值
for i in range(1, n+1):
S += 1 / i**2
print("S 的值为:", S)
```
上述代码中,首先通过 `input` 函数从键盘读取输入的整数 `n`,然后初始化变量 `S` 的值为 0。接着使用 `for` 循环遍历从 1 到 `n` 的所有整数,计算每一项的值并累加到 `S` 中。最后,通过 `print` 函数输出计算得到的 `S` 的值。
需要注意的是,在 Python 中,除法运算符 `/` 表示浮点数除法,而双乘号 `**` 表示幂运算。