Загрузка данных


def ln(x):
    y = (x - 1) / (x + 1)
    res = 0
    term = y
    y2 = y * y
    for k in range(1, 100, 2):
        res += term / k
        term *= y2
    return 2 * res

p = float(eval(input("Введите степень p (например, 13/4): ")))
nodes = [float(x) for x in input("Введите узлы через пробел (например, 2 3 4): ").split()]
a = float(input("Введите точку a (например, 2.5): "))

def f(x):
    return ln(x) ** p

n = len(nodes)
L_a = 0

for i in range(n):
    term = f(nodes[i])
    for j in range(n):
        if i != j:
            term *= (a - nodes[j]) / (nodes[i] - nodes[j])
    L_a += term

f_a = f(a)

print("Истинное значение f(a):", f_a)
print("Приближенное значение L(a):", L_a)