! File: constant2.f90
! Public domain 2004 James Van Buskirk

module pi_mod2
   use pi_mod1
   implicit none
   real(dp), parameter, private :: t = 10
   type(pi_type), parameter, private :: p = pi_type('','','','','','','', &
                                           '','','','','','','','','','')
   real(dp), parameter :: pi = (((((((((((((((len(p%d16)/t+len(p%d15))/t+ &
      len(p%d14))/t+len(p%d13))/t+len(p%d12))/t+len(p%d11))/t+ &
      len(p%d10))/t+len(p%d9))/t+len(p%d8))/t+len(p%d7))/t+ &
      len(p%d6))/t+len(p%d5))/t+len(p%d4))/t+len(p%d3))/t+ &
      len(p%d2))/t+len(p%d1))/t+len(p%d0)
end module pi_mod2

program constant2
   use pi_mod2
   implicit none
type(pi_type) p

   write(*,'(1x,f18.16)') pi
end program constant2
