view examples/fortransub.f @ 18673:1dcc9539234c

Fix bug with input() and nargout==0 (bug #42111). * input.cc (Finput): Call get_user_input() to produce at least 1 output.
author Rik <rik@octave.org>
date Thu, 24 Apr 2014 14:03:46 -0700
parents 4b32677b6229
children
line wrap: on
line source

      subroutine fortransub (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 ('fortransub: 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 ('fortransub: error writing string')
      endif
      return
      end