Program h : polagr

      program progh
      implicit none

      real order12,polagr
      external order12
      real maxerr,f(13),z(13),zz
      integer i
      
# initialize function
      print *,'Function F (order-12 polynomial):'
      do i=1,13
         z(i)=0.05*(i**2-80)
         f(i)=order12(z(i))
         print *,'f(',z(i),' )=',f(i)
      enddo
      print *,''
      maxerr=0
      do i=1,12
         zz=i-6
         maxerr=max(maxerr, abs(1-polagr(zz,f,z,13)/
     *    order12(zz)) )
      enddo   
      print *,'For interpolation at x=-4,8'
      print *,'The maximum relative error is:',maxerr
      
      stop
      end

      real function order12(x)
      real x
      order12=(((((((((((0.1*x+0.2)*x+0.3)*x+0.4)*x+0.5)*x+0.6)*x+0.7
     * )*x+0.8)*x+0.9)*x+1.0)*x+1.1)*x+1.2)*x+1.3
      return
      end