5.编写函数func(n),n为正整数: (1)如果传入的参数n为偶数,则返回1/2+1/4+1/6+...+1/2n (2) 如果传入的参数n为奇数,则返回1/3+1/5+1/7+...+1/(2n+1)。
时间: 2023-09-18 20:16:24 浏览: 126
以下是实现该函数的 Python 代码:
```python
def func(n):
if n % 2 == 0:
return [1/(2*i) for i in range(1, n+1)]
else:
return [1/(2*i+1) for i in range(n)]
```
该函数首先判断传入的参数 `n` 是奇数还是偶数,然后根据不同的情况生成一个列表,列表中的元素是根据题目要求计算得到的。
如果 `n` 是偶数,那么列表中的元素可以通过列表推导式生成,其中 `range(1, n+1)` 产生了一个从 1 到 `n` 的整数序列,然后对于序列中的每一个元素 `i`,计算 `1/(2*i)` 并添加到列表中即可。
如果 `n` 是奇数,那么列表中的元素可以通过类似的方式生成,只是这次需要使用 `range(n)` 生成一个从 0 到 `n-1` 的整数序列,然后对于序列中的每一个元素 `i`,计算 `1/(2*i+1)` 并添加到列表中即可。
最后函数返回生成的列表。
阅读全文