積分の上限、下限と分割数を与えた時、台形公式で数値積分の結果を出すサブルー チンを利用すると、分割数を2の冪乗とした時の結果を出すプログラムは以下の ようになる。
c Main routine
c
implicit real*8 (a-h,o-z)
dimension dInt(10,3)
c
do m=1,6
n=2**m
dInt(m,1)=dIntegral(n,a,b)
end do
c
do m=1,6-1
write(*,*) 2**m, dInt(m,1),dInt(m+1,1)-dInt(m,1)
end do
end
c
c
c Integral routine(trapezoidal integral)
c
real*8 function dIntegral(n,a,b)
implicit real*8 (a-h,o-z)
integer n,i
c
...........
dIntegral=......
return
end
また、これを利用すると、Richardson 補外のプログラムができる。複数回
Richardson 補外を繰り返すには、subroutine 文を使うと有効である。