python编写函数,输出1+1/2+1/3+…+1/n的值
时间: 2023-09-05 22:11:40 浏览: 68
可以编写一个函数来计算这个求和的结果,如下所示:
```python
def calc_sum(n):
result = 0
for i in range(1, n+1):
result += 1/i
return result
```
这个函数接受一个参数 `n`,表示要计算的求和的项数。然后使用一个循环来逐一计算每一项的值,并累加到 `result` 变量中。最后返回 `result` 的值,即为所求的求和结果。
例如,如果要计算 1+1/2+1/3+1/4+1/5 的结果,可以调用 `calc_sum(5)`,得到结果为 `2.283333333333333`。
相关问题
python编写函数实现1+2+3+…+n并输出,n由键盘输入
好的,以下是 Python 代码实现:
```python
def sum_n(n):
return sum(range(1, n+1))
n = int(input("请输入一个正整数n:"))
print("1+2+3+...+n =", sum_n(n))
```
这个函数使用了 Python 内置的 `sum()` 函数和 `range()` 函数,`range(1, n+1)` 生成了从 1 到 n 的整数序列,`sum()` 函数对这个序列求和。
编写一个递归函数,计算1+1/2+1/3+……+1/n
以下是 Python 代码实现:
```python
def sum_recursion(n):
if n == 1:
return 1
else:
return 1/n + sum_recursion(n-1)
n = 5
print(sum_recursion(n)) # 输出:2.283333333333333
```
这个递归函数的思路是:先判断输入的参数n是否等于1,如果是,则返回1;如果不是,则递归调用sum_recursion(n-1),并将结果加上1/n返回。
例如,当n=5时,函数先计算1/5,然后递归调用sum_recursion(4),计算1/4,以此类推,直到n=1时,返回1。最后将所有结果相加,即得到1+1/2+1/3+1/4+1/5=2.283333333333333。