一次元配列a(:)に対してMINLOC(a)の類は要素1個の配列を返すが、MINLOC(a, 1)とすればスカラーで答えを受け取れる。
PROGRAM test IMPLICIT NONE REAL :: a(3) INTEGER :: k0(0), k1(1) CALL RANDOM_NUMBER(a) k0 = SHAPE( MINLOC(a, 1) ) k1 = SHAPE( MINLOC(a) ) PRINT *, k0, k1 STOP END PROGRAM test
文字列を文字配列に直すのはTRANSFER関数で出来る。代入配列が無い場合は、SIZE引数に文字列長を渡せばよい。
PROGRAM test IMPLICIT NONE CHARACTER(LEN =13) :: text1 = 'Shine! 輝け!' CHARACTER(LEN = 1) :: text2(13) CHARACTER(LEN =13) :: text3 = 'Shine! 死ね!' text2 = TRANSFER(text1, text2) PRINT *, text2 PRINT *, TRANSFER(text3, ' ', LEN(text3)) STOP END PROGRAM test