PROGRAM sort10 IMPLICIT NONE INTEGER, DIMENSION(1:10) :: nums INTEGER :: temp, J, K ! --- Read in the data WRITE (UNIT=*, FMT=*) 'Type ten integers each on a new line' DO J = 1, 10 READ (UNIT=*, FMT=*) nums(J) END DO ! --- Sort the numbers into ascending order of magnitude L1: DO J = 1, 9 L2: DO K = J+1, 10 IF(nums(J) > nums(K)) THEN temp = nums(K) nums(K) = nums(J) nums(J) = temp END IF END DO L2 END DO L1 ! --- Write out the sorted list DO J = 1, 10 WRITE (UNIT=*, FMT=*) 'Rank ', J, ' Value is ', nums(J) END DO END PROGRAM sort10