answer=0
for i in range (11):
k=i
x = (-1**k) / ((2 * k) + 1)
answer+=x
answer=4*answer
print(answer)
вывод: -8.723498311114408
оно должно быть близко к 3,14
Я не совсем уверен, потому что я не могу проверить rn, но я думаю, что должно быть (-1) ** k. Также вы хотите, чтобы переменная была названа k, просто измените цикл на for k in range(11) вместо переназначения
@ user8408080 это ответ





** имеет приоритет над - (см. документы), следовательно, -1 ** k оценивается как -(1 ** k), что, конечно, не то, что вы имели в виду.
Измените x = (-1 ** k) / ((2 * k) + 1) на x = (-1) ** k / ((2 * k) + 1)
Арифметика с плавающей запятой неточна, что может хотя бы частично объяснить вашу ситуацию. Другая проблема может заключаться в неправильной формуле.