double precision function trapezoidal(a, b, f, n) double precision a, b, f, n, h, x, s integer i external f h = (b-a)/n s = 0 x = a do i = 1, n-1 x = x+h s = s+f(x) end do s = 0.5*(f(a) + f(b)) + s trapezoidal = h*s return end double precision function f_1(x) double precision x f_1 = 1+x return end double precision function f_2(x) double precision x f_2 = exp(-x*x)*log(1 + x*sin(x)); return end