view examples/fortsub.f @ 6800:afbd31bb7b4e ss-2-9-13

[project @ 2007-07-25 20:54:34 by jwe]
author jwe
date Wed, 25 Jul 2007 20:54:34 +0000
parents 8e7148b84b59
children 4270ded9ddc6
line wrap: on
line source

      subroutine fortsub (n, a, s)
      implicit none
      character*(*) s
      real*8 a(*)
      integer*4 i, n, ioerr
      do i = 1, n
        if (a(i) .eq. 0d0) then
          call xstopx ('fortsub: divide by zero')
        else
          a(i) = 1d0 / a(i)
        endif
      enddo
      write (unit = s, fmt = '(a,i3,a,a)', iostat = ioerr)
     $       'There are ', n, ' values in the input vector',
     $       char(0)
      if (ioerr .ne. 0) then
        call xstopx ('fortsub: error writing string')
      endif
      return
      end