配列の値を返す関数の書き方
fortranの勉強メモ。こんなことも知らなかったのかと小一時間…。
サンプルプログラム
PROGRAM main ! 宣言部 REAL(8),DIMENSION(10):: B=1.d0 INTERFACE ! 呼び出し側で明示的引用仕様を持たなくてはなりません。 FUNCTION DX(A) REAL(8),DIMENSION(10):: A,DX END FUNCTION END INTERFACE ! 実行部 WRITE(*,*)DX(B) END PROGRAM FUNCTION DX(A) ! 宣言部 REAL(8),DIMENSION(10):: A,DX ! 手続が配列値である結果を持つ場合 ! 実行部 DO i=1,10 DX(i)= i*A(i) END DO RETURN END FUNCTION
参考文献:http://www.xlsoft.com/jp/products/intel/cvf/docs/vf-html/lr/lr08_08_01.htm