Python编程题:编写一个函数当输入n为奇数时调用函数求1/1+1/3+……+1/n,输入n为偶数时调用函数求1/2+1/4+……+1/n
时间: 2023-09-30 22:03:44 浏览: 91
以下是Python代码:
```python
def sum_fraction(n):
if n % 2 == 1:
sum = 0
for i in range(1, n+1, 2):
sum += 1/i
return sum
else:
sum = 0
for i in range(2, n+1, 2):
sum += 1/i
return sum
```
解释:
- 函数名为 `sum_fraction`,输入参数为 `n`
- 如果输入的 `n` 是奇数,则使用 `for` 循环从 1 开始,每次加 2,累加分数的和
- 如果输入的 `n` 是偶数,则使用 `for` 循环从 2 开始,每次加 2,累加分数的和
- 最后返回分数的和
相关问题
python,编写一个函数,输入n为偶数时,调用函数1+1/2+1/4+1/6+……+1/n,输入n为奇数时,调用函数1+1/3+1/5+1/7+……+1/n,结果取两位小数
以下是Python编写的函数,可以根据输入的n值计算不同的数列和,并将结果保留两位小数输出:
```python
def calculate_sum(n):
if n % 2 == 0:
result = sum([1 / i for i in range(2, n + 1, 2)])
else:
result = sum([1 / i for i in range(1, n + 1, 2)])
return round(result, 2)
```
其中,`range(start, stop, step)`函数可以生成一个从`start`开始,到`stop`结束,步长为`step`的整数序列。因此,`range(2, n + 1, 2)`可以生成一个从2开始,到n结束,步长为2的整数序列,用于计算偶数项的和;`range(1, n + 1, 2)`可以生成一个从1开始,到n结束,步长为2的整数序列,用于计算奇数项的和。
下面是使用该函数计算不同n值下的数列和的例子:
```python
print(calculate_sum(4)) # 输出:1.5
print(calculate_sum(5)) # 输出:1.63
```
用python编写一个函数:当输入n为偶数时,调用函数求1/2+1/4+1/6+…+1/n; 当输入n为奇数时,调用函数求1/1+1/3+1/5+…+1/n
下面是一个示例函数,可以实现你的要求:
```python
def sum_fraction(n):
if n % 2 == 0: # 如果n为偶数
return sum(1 / i for i in range(2, n + 1, 2)) # 求1/2+1/4+1/6+...+1/n
else: # 如果n为奇数
return sum(1 / i for i in range(1, n + 1, 2)) # 求1/1+1/3+1/5+...+1/n
```
使用示例:
```python
print(sum_fraction(6)) # 输出:1.4666666666666668
print(sum_fraction(7)) # 输出:1.4236111111111112
```
阅读全文