使用python对序列的n项求和,只使用for和while循环

2024-09-30 08:24:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须要求用户输入n个数量的术语,以及它们为这个序列选择的x值。你知道吗

x^5/5 - x^7/7 + x^9/9 - x^11/11 + ...

我很难解释每隔一个学期符号的变化,不能使用任何if语句。你知道吗

任何帮助都将不胜感激,谢谢!你知道吗

到目前为止我的代码是:

print(" ")
print("Please enter the number of terms you would like to sum up.")
print("The sequence is x^5/5-x^7/7+x^9/9-...")
print(" ")
n=int(input('Number = '))
print(" ")
print("Please enter the number for x.")
print(" ")
x=int(input('x = '))
#
nsum=0
for i in range(5,n+6,2):
    coefficient=1/i
    for j in range(5,i+1,2):
        coefficient=-1*coefficient
    nsum=nsum+coefficient*x**i
#
print(nsum)

Tags: the用户innumberforinput数量range
1条回答
网友
1楼 · 发布于 2024-09-30 08:24:14

如果n是奇数,则第n项为正,如果是偶数,则第n项为负。所以你可以在for循环中这样做。此外,在您的代码中,用户输入n不等于字数:

nsum=0
for index in range(0, n):
    coefficient=(-1)**(index)
    i =  2*index + 5
    nsum=nsum+coefficient*x**i/i

相关问题 更多 >

    热门问题