用python 编写一个函数,参数n为偶数时,返回 1/2+1/4+...+1/n 的值;参数n为奇数时,返回1/1+1/3+··-+1/n的值
时间: 2023-09-28 12:12:32 浏览: 44
好的,以下是用 Python 编写的函数实现:
```python
def sum_of_fraction(n):
if n % 2 == 0:
return sum([1 / i for i in range(2, n+1, 2)])
else:
return sum([(-1)**(i+1) / i for i in range(1, n+1, 2)])
```
当参数 `n` 为偶数时,函数会计算出 $1/2+1/4+...+1/n$ 的值并返回;当 `n` 为奇数时,函数会计算出 $1/1+1/3+··-+1/n$ 的值并返回。
相关问题
编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/npython
你可以编写一个Python函数,利用条件判断实现这个需求。下面是一个简单的示例:
```python
def sum_of_series(n):
if n % 2 == 0: # 如果n是偶数
series_sum = sum(1/i for i in range(2, n + 1, 2)) # 计算从2到n的所有偶数倒数之和
else: # 如果n是奇数
series_sum = sum(1/i for i in range(1, n + 1, 2)) # 计算从1到n的所有奇数倒数之和
return series_sum
# 示例调用
print(sum_of_series(6)) # 输出1/2 + 1/4 + ... + 1/6 的和
print(sum_of_series(7)) # 输出1/1 + 1/3 + ... + 1/7 的和
```
在这个函数中,我们首先检查输入的`n`是否为偶数。如果是,我们只计算偶数部分;如果为奇数,则计算奇数部分。通过列表推导式和内置的`sum()`函数,可以快速地完成这一系列操作。
(1)用python编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n。
当然可以。在Python中,我们可以创建一个名为`sum_series`的函数,通过条件判断实现这个需求。以下是具体的代码:
```python
def sum_series(n):
if n % 2 == 0: # 如果n是偶数
partial_sum = sum(1/i for i in range(2, n+1, 2)) # 计算从1/2到1/(n/2)的所有分数之和
else: # 如果n是奇数
partial_sum = sum(1/i for i in range(1, n+1, 2)) # 计算从1/1到1/(n-1)的所有奇数分母的分数之和
return partial_sum
# 测试函数
print(sum_series(6)) # 输出1/2 + 1/4 + ... + 1/6
print(sum_series(7)) # 输出1/1 + 1/3 + ... + 1/7
```
在这个函数中,我们首先检查输入`n`是否为偶数,然后计算相应的等差序列的和。对于偶数情况,序列是从2开始,步长为2;对于奇数情况,序列是从1开始,步长为2。
阅读全文