帮忙看一下,刚学不太会

分数数列前 n 项之和 描述 输入一个正整数n,计算并输出数列 1、1/3、1/5、+...、的前 n 项之和。

你是哪个地方不太会呢,是不会写循环?

n = int(input('输入整数n:'))

s = 1

v = 3

for i in range(1,n):

    s += 1 / v

    v += 2

print(s)

 

n = input()
sum = 0;

for i in range(1,n,2):
    sum+= 1/i;
print(sum)

 

这个其实不难的

1、主要是分母,分母和n的关系是  2*n-1

2、还有要注意一下range的上线应该是 1到n+1

所以源程序如下:

n = int(input("请输入一个数值n="))
sum = 0;
 
for i in range(1,n+1):
    sum+= 1/(2*i-1);
print("得出的和为:%.2f" %sum)

运行结果:

请输入一个数值n=2
得出的和为:1.33

请输入一个数值n=5
得出的和为:1.79

 

n = input("Please enter N: ")
lst = [1/i for i in range(1, int(n) * 2, 2)]
print(sum(lst))

# Output
Please enter N: 100
3.2793170636734916

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632