from math import * epsilon=10**(-8) a=0.0 b=1.0 n=8 # Initial number of intervals M=12 # Max number of times we half h h=(b-a)/n I=0 x=a+h/2 for k in range(n): I=I+cos(x) x=x+h I=h*I abserr=abs(I) print I, sin(1) j=1 while jepsilon*abs(I): j=j+1 Ip=I n=2*n h=(b-a)/n I=0 x=a+h/2 for k in range(n): I=I+cos(x) x=x+h I=h*I print I, sin(1), abs(I-Ip)/abs(Ip) abserr=abs(I-Ip)