Week 9: Homework Solutions

3.

def simpsons_rule(f, N, a, b):
    approximation = 0
    for i in range(N):
        approximation += (b-a)/(6*N) * (f(a + (i)*(b-a)/N) +
                                        4*f(a + (i+1/2)*(b-a)/N) +
                                        f(a + (i+1)*(b-a)/N))
    return approximation

Simpson's rule gives the exact answer for the integral, no matter how many vertical strips are used for both $x^2$ and $x^3$.