demo_sort.f90 Source File


Contents

Source Code


Source Code

     program demo_sort
     ! sort array in ascending order
     use,intrinsic :: iso_fortran_env, only : int32, real32, real64
     use M_orderpack, only : sort
     implicit none
     ! an insertion sort is very efficient for very small arrays
     ! but generally slower than methods like quick-sort and merge-sort.
     real(kind=real64) :: valsd(2000)
     integer           :: i
        call random_seed()
        call random_number(valsd)
        valsd=valsd*1000000.0-500000.0
        call sort(valsd)
        do i=1,size(valsd)-1
           if (valsd(i+1).lt.valsd(i))then
              write(*,*)'not sorted'
              stop 3
           endif
        enddo
        write(*,*)'random arrays are now sorted'
     end program demo_sort