program PrintResults implicit none integer, parameter :: MAXVALUE = 10000 integer, parameter :: COUNT = 1000 integer, dimension(COUNT) :: testarr integer high, low real avg, stddev real, dimension(5) :: randomarray call random_seed() open(10, file='results1F.txt') call initArray(testarr, COUNT); high = findMax(testarr,COUNT); low = findMin(testarr,COUNT); avg = findAvg(testarr,COUNT); stddev = findStdDev(testarr,COUNT); write(10, "(A,I4,A, I4, A, F6.2, A, F8.3)"), & ' Max:', high, ' Min:', low, ' Average:', avg, & ' Standard Deviation:', stddev write(10,*) 'Original array:' write(10, *) call printArray(10, testarr, COUNT) call sortArray(testarr,COUNT) write(10,*) 'Sorted array:' call printArray(10, testarr,COUNT) write(10,*) close(10) contains subroutine initArray(arr, length) implicit none integer, intent(in) :: length integer, dimension(length), intent(out) :: arr integer i do i=1, length call random_number(randomarray) arr(i) = int(randomarray(1)*MAXVALUE) end do end subroutine subroutine printArray(filenum, arr, length) implicit none integer, intent(in) :: length integer, intent(in) :: filenum integer, dimension(length), intent(out) :: arr integer, parameter :: NUMSPERLINE = 10 integer i, j do i=1, length/NUMSPERLINE !Make length divisible by this write(*,"(10I7)") & (arr(j), j=(i-1)*NUMSPERLINE+1, (i-1)*NUMSPERLINE+NUMSPERLINE) write(filenum,"(10I7)") & (arr(j), j=(i-1)*NUMSPERLINE+1, (i-1)*NUMSPERLINE+NUMSPERLINE) end do write(*,*) write(filenum,*) end subroutine subroutine sortArray(arr, length) ! NOTE: THIS IS NOT A CORRECT SORT! implicit none integer, intent(in) :: length integer, dimension(length), intent(out) :: arr integer i, j, temp do i = 1, length-1 do j = i+1, length temp = arr(i) arr(i) = temp end do end do end subroutine integer function findMax(arr, length) ! NOT CORRECT! implicit none integer, intent(in) :: length integer, dimension(length), intent(in) :: arr integer i findMax = 100 end function integer function findMin(arr, length) ! NOT CORRECT! implicit none integer, intent(in) :: length integer, dimension(length), intent(in) :: arr integer i findMin = 0 end function real function findAvg(arr, length) ! NOT CORRECT! implicit none integer, intent(in) :: length integer, dimension(length), intent(in) :: arr integer i findAvg = 560.1234 end function real function findStdDev(arr, length) ! NOT CORRECT! implicit none integer, intent(in) :: length integer, dimension(length), intent(in) :: arr integer i findStdDev = 1.1234 end function end program