「Infini-T Force(インフィニティ フォース)」メインPV
アニメ『Infini-T Force(インフィニティ フォース)』(2017)
かっけぇっす。
ギャラクター、健在です。しかも冒頭から原子力空母かっぱらってます。
各ヒーローたちも含め人の表情が硬いってところはありますが、ヒーローのアクションが目当てなので気にしません。私はガッチャマンよりもテッカマンが好きだったのですが(特にテッカマンの変身シーン、毎回ぞくぞくしていました)、性格を加味して破裏拳ポリマーが一番まともかも。ガッチャマン一号のケンってこんなうざかっただろうか。。。自分の記憶している主人公たちとのギャップもあって楽しいです。
FORTRAN続きです。 今回は関数です。
関数は、FUNCTIONですが、まずはサブルーチンから使います。サブルーチンを作るには、SUBROUTINEを使います。
takk@deb9:~$ cat sub.f PROGRAM MAIN CALL HELLO STOP END SUBROUTINE HELLO() WRITE(*,11111) 11111 FORMAT('HELLO') RETURN END takk@deb9:~$
サブルーチンHELLOを実行するには、CALLが必要みたいです。そしてVBのSUBの元はSUBROUTINEだったということも分かりました。
ではプログラムを実行してみます。
takk@deb9:~$ gfortran sub.f takk@deb9:~$ ./a.out HELLO takk@deb9:~$
次は関数です。関数はFUNCTIONで定義します。戻り値を設定するには、関数名に代入してやればよいです。VBと同じですね。
takk@deb9:~$ cat func.f PROGRAM MAIN READ (*,*) I,J K=ADD(I,J) WRITE(*,11111) K 11111 FORMAT(I5) STOP END FUNCTION ADD(I,J) ADD = I + J RETURN END takk@deb9:~$
実行結果です。
takk@deb9:~$ gfortran func.f takk@deb9:~$ ./a.out 10,20 30 takk@deb9:~$
次は、またサブルーチンですが、引数ありのサブルーチンです。
takk@deb9:~$ cat sub.f PROGRAM MAIN READ(*,*) I,J CALL ADD(I,J,K) WRITE(*,11111) K 11111 FORMAT(I5) STOP END SUBROUTINE ADD(I,J,K) K = I + J RETURN END takk@deb9:~$
これはスゴイです。C言語ばかりやってきた私としては、ポインタや参照を使わないのに引数で戻り値を返せるというところにびっくり。いろんな言語の祖先だけあってFORTRANは結構柔軟にできてるんですね。
実行結果です。
takk@deb9:~$ gfortran sub.f takk@deb9:~$ ./a.out 11,22 33 takk@deb9:~$
コメント