Program 5 : amax, gdmpcn, amean, amin

      program prog5
      implicit none

      real amax,amean,amin,result,result2,max,min,sum
      real array(13,15),opposite(13,15)
      integer i,j
      
      do i=1,13
         do j=1,15
            array(i,j)=cos(float(i-1))+cos(float(j-1))
         enddo   
      enddo
      print *,'Here are some properties of the array'
# find maximum value in three ways:
      result=amax(array,13,15,0)

      call gdmpcn(opposite,array,-1.0,13,15,0)
      result2=-amin(opposite,13,15)

      max=array(1,1)
      do i=1,13
         do j=1,15
            if (array(i,j).gt.max) then 
               max=array(i,j)
            endif   
         enddo
      enddo
      print *,'Its maximum value is:',max,'(error:',abs(result-max)
     * +abs(result2-max),')'

# find minimum in three ways
      result=amin(array,13,15,0)
      
      result2=-amax(opposite,13,15,0)
      
      min=array(1,1)
      do i=1,13
         do j=1,15
            if (array(i,j).lt.min) then 
               min=array(i,j)
            endif   
         enddo
      enddo
      print *,'Its minimum value is:',min,' (error:',abs(result-
     * min)+abs(result2-min),')'

# find mean value in two ways
      result=amean(array,13,15,0)
      
      sum=0
      do i=1,13
         do j=1,15
            sum=sum+array(i,j)
         enddo
      enddo
   
      print *,'Its mean value is:',result,' (error:',abs(result-
     * sum/13/15),' )'

      stop
      end