program pi1
  ! pi as integral

  use kinds
  implicit none
        
  integer(kind=INT4) :: n, i
  real(kind=REAL8)   :: h, x, sum, pi
      
  print*, 'enter number of intervals:'
  read*, n
  h = 1.0/n
  sum = 0.0

  do i=1,n
     x = h*(i-0.5)
     sum = sum + 4.0 / (1.0 + x*x)
  enddo
  pi = h*sum
  print *, pi

end program pi1