Вычислить сумму ряда
Дано условие задания:
Решение:
import math
x = int(input("Введите значение Х > 1: "))
if x < 1: print("Недопустимое значение Х")
n = int(input('Введите значение N: '))
if n < 0: print("Недопустимое значение N")
for n1 in range(n+1):
a = 2*n1+1
b = n1 + 1 #степень
if b % 2 == 0:
y = math.pi/2 +(1)/(a * x**a)
elif b % 2 != 0:
y = math.pi/2 +(-1)/(a * x**a)
print(y)
Вводя х = 5 и n = 6 ответ выходит 1.5707963267318812, что, к сожалению, неверно. Верный ответ при таких вводимых числах — 1.3734007669429056. В чём ошибка?
Ответы (1 шт):
Автор решения: Mikhailo
→ Ссылка
Мне кажется, что Harry прав, и задаваться должно не количество членов ряда, а точность.
А считать просто:
x = int(input("Введите значение Х: "))
e = float(input("Введите точность: "))
s = 1
t = -x
k = -1
while abs(t) > e:
s += t
k -= 1
t *= x/k
print(s)
