Python代码 函数求和 函数求和 要求 编写一个函数sum(n),当n为偶数时,返回1/2+1/4+…+1/n;当n为奇数时,返回1/1+1/3+…+1/n。 注意:结果保留2位小数。
时间: 2024-06-12 17:11:38 浏览: 65
这道题目要求编写一个函数sum(n),当n为偶数时,返回1/2+1/4+…+1/n;当n为奇数时,返回1/1+1/3+…+1/n。而且结果需要保留2位小数。下面是一个Python代码的实现:
def summ(n):
if n%2:
m=1
else:
m=2
return round(sum([1/x for x in range(m,n+1,2)]),2)
print(summ(5))
其中,函数summ(n)的参数n表示要求和的最大值,如果n为奇数,则从1开始每隔2个数取一个数,如果n为偶数,则从2开始每隔2个数取一个数。然后使用列表推导式生成一个列表,其中每个元素都是1/x,其中x是从m开始每隔2个数取一个数,直到n为止。最后使用sum函数对这个列表求和,并使用round函数将结果保留2位小数。最后调用函数并输出结果。
相关问题
python编写一个函数,输入n为偶数时,调用函数求1 / 2 + 1 / 4 + ... + 1 / n, 当输入n为奇数时,调用函数1 / 1 + 1 / 3 + ... + 1 / n
好的,以下是 Python 代码实现:
```python
def sum_n(n):
if n % 2 == 0:
return sum([1/(2*i) for i in range(1, n//2+1)])
else:
return sum([1/(2*i-1) for i in range(1, (n+1)//2)])
```
在函数中,我们首先判断输入的 n 是奇数还是偶数。如果是偶数,我们使用列表推导式计算 1/2 + 1/4 + ... + 1/n,如果是奇数,我们使用列表推导式计算 1/1 + 1/3 + ... + 1/n。最后通过 `sum()` 函数将列表中的元素求和并返回。
编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n.python
以下是 Python 代码实现:
```python
def sum_of_series(n):
if n % 2 == 0:
return sum([1/i for i in range(2, n+1, 2)])
else:
return sum([1/i for i in range(1, n+1, 2)])
```
函数 `sum_of_series(n)` 接受一个正整数 `n`,首先判断 `n` 是否为偶数。如果是偶数,使用列表推导式生成一个从 2 开始每隔 2 个数取一个的列表,然后对这个列表中的每个元素求倒数,最后求和并返回结果。如果 `n` 是奇数,使用列表推导式生成一个从 1 开始每隔 2 个数取一个的列表,然后对这个列表中的每个元素求倒数,最后求和并返回结果。
阅读全文