编写一个函数,输入n为偶数时,求sum=1/2+1/4+...+1/n,当输入n为奇数时,求sum=1/1+1/3+...+1/n,sum为double。
时间: 2023-05-03 09:02:49 浏览: 106
python 编写一个函数,输入n为偶数时,调用函数求解(示例)
5星 · 资源好评率100%
题目意思是,编写一个函数,输入n为偶数时,求sum=1/2+1/4+...+1/n,当输入n为奇数时,求sum=1/1+1/3+...+1/n,sum需要输出double类型。
答案:
可以使用循环遍历每一个数,根据题目要求计算出sum的值。当n为偶数时,每次加入的分数为1/2,1/4,...,1/n,可以用一个循环从2到n,每次加入1/i。当n为奇数时,每次加入的分数为1/1,1/3,...,1/n,可以用一个循环从1到n,每次加入1/(2i-1)。最后将得到的sum转化成double类型输出即可。
代码如下:
```python
def calc_sum(n):
sum = 0
if n % 2 == 0: # n为偶数
for i in range(2, n+1, 2):
sum += 1 / i
else: # n为奇数
for i in range(1, n+1, 2):
sum += 1 / i
return float(sum) # 转化为double类型输出
```
注意要在最后将得到的sum转化为float类型,因为Python中float类型比double类型要精确。
阅读全文