! 例題 8-2 ヒストグラムを描く(成績分布) [作業の分業 ] PROGRAM ex8_2 IMPLICIT NONE INTEGER :: nn( 0 : 9 ), j CHARACTER ( LEN = 80 ) :: cn nn = (/ 1, 5, 12, 22, 28, 35, 48, 28, 10, 3 /) DO j = 0, 9 CALL str( nn( j ), cn ) PRINT '( 1X, I2, "-", I2, 1X, A50 )', 10 * j, 10 * j + 9, cn END DO END PROGRAM ex8_2 ! 文字列だけ作成する下請け工場 SUBROUTINE str( n, c ) IMPLICIT NONE INTEGER, INTENT ( IN ) :: n INTEGER :: k CHARACTER ( LEN = 80 ), INTENT ( OUT ) :: c c = ' ' c( 1 : 1 ) = '|' DO k = 2, n + 1 c( k : k ) = '#' END DO END SUBROUTINE str