Трапециевидное правило в Python

Я пытаюсь реализовать правило трапеции в Python 2.7.2. Я'мы написали следующую функцию:

def trapezoidal(f, a, b, n):
    h = float(b - a) / n
    s = 0.0
    s += h * f(a)
    for i in range(1, n):
        s += 2.0 * h * f(a + i*h)
    s += h * f(b)
    return s

Однако, f (лямбда х: х ** 2, 5, 10, 100) возвращает 583,333 (этоs должен вернуть 291.667), так что, очевидно, что-то не так с моим сценарием. Я могу'хотя это не замечено.

Ответы на вопрос(2)

Ваш ответ на вопрос