Fortran基本プログラムを1行ずつ解説_IF文について

プログラム
Pocket

Fortran基本プログラムを1行ずつ解説

Fortran 数値計算の基本、do文IF文の組み合わせ例も解説してます

数値計算と変換誤差

で書いたように、Fortoranを使って研究してます。

他にも

レイノルズ方程式をプログラミング

を書きましたが

今回は

Fortran超基本プログラムを1行ずつ解説していきたいと思います。

IF文のサンプルプログラム

program test

real a,b

write (*,*) ‘input a’

read (*,*) a

write (*,*) ‘input b’

read (*,*) b

write (*,*) ‘a=’,a

write (*,*) ‘b=’,b

if(a>b) then

write (*,*) sqrt((a+b)*(a-b)/b**a)

end if

if(a<=b) then

write (*,*)’ a>b! Input again!’

end if

stop
end

IF文プログラムの解説

まず、
program testについて

この文はこのプログラムはtestという名前ですよを表しています。
別にtestという文字じゃなくても問題ないです。

次に
real a,bについて

まず変数を使う時には、最初に変数の型を宣言しなければなりません。
今回はreal型で宣言してます。
簡単に説明するとreal型は実数型のことです。
real型の詳細はFortran 数値計算の基本に書いてあります。
上のプログラムだと、a,bを実数で宣言してます。

次に
write(*,*)‘input a’について

WRITE文は表示する時に使います。
‘…’の中身が表示されます。
(*,*)はとりあえず機械的につけておけばいいです。
上のプログラムだと‘input a’が表示されます。

次に
read (*,*) aについて

read文は数値を入力するときに使います。
上のプログラムだとaという変数に何か数値を入れるということです。
例えば、6いう数字をキーボードで打つと、a=6.0となり、3いう数字をキーボードで打つと、a=3.0になります。

次に
write(*,*)‘input b’について

WRITE文は表示する時に使います。
‘…’の中身が表示されます。
(*,*)はとりあえず機械的につけておけばいいです。
上のプログラムだと‘input b’が表示されます。

次に
read (*,*) bについて

read文は数値を入力するときに使います。
上のプログラムだとbという変数に何か数値を入れるということです。
例えば、5いう数字をキーボードで打つと、b=5.0となり、2いう数字をキーボードで打つと、b=2.0になります。

次に
write (*,*) ‘a=’,a について

WRITE文は表示する時に使います。
まず‘…’の中身が表示され、そのあとに変数値が表示されます。
(*,*)はとりあえず機械的につけておけばいいです。
上のプログラムだとa=readで打った数字が表示されます。

write (*,*) ‘b=’,b について

WRITE文は表示する時に使います。
まず‘…’の中身が表示され、そのあとに変数値が表示されます。
(*,*)はとりあえず機械的につけておけばいいです。
上のプログラムだとb=readで打った数字が表示されます。

次に
if(a>b) then
write (*,*) sqrt((a+b)*(a-b)/b**a)
end if
について

IF文は条件に応じて、異なる処理を実行できます。
として
if(条件1)then
 処理1
(処理2)
(処理3)
end if
は「(条件1)ならば、(処理1、処理2、処理3、)をして下さい。」という意味です。
上のプログラムだと
もしa>bなら、sqrt((a+b)*(a-b)/b**a)を計算しろという意味です。(sqrt()は√)

次に
if(a<=b) then
write (*,*)’ a>b! Input again!’
end if
について

これも前と同じで
if(条件1)then
 処理1
(処理2)
(処理3)
end if
は「(条件1)ならば、(処理1、処理2、処理3、)をして下さい。」という意味です。
上のプログラムだと、もしa<=bなら、a>b! Input again!を表示する、という意味です。

今回は√の計算をしているので、√の中がマイナスになると計算できません。

サンプルプログラムの場合

a<=bで√の中がマイナスになり計算できません。
そこでIF文を使い条件分けをしました。

最後に
stop
endについて

これはプログラムの終わりに書くものでプログラムの最後を表してます。

以上で解説を終わります。

IF文直後の条件の書き方

演算子 書式 意味
> a>b aはbより大きい
>= a>=b aはbより大きいか等しい
< a<b aはbより小さい
<= a<=b aはbよりちいさいか等しい
== a==b aとbは等しい
/= a/=b aとbは等しいは等しくない

まとめ

IF文は数値計算において重要な処理です。

また、数値計算だけでなく、制御のプログラムにも使われるので、使いこなしましょう。

終わり

関連記事

地獄の研究室生活 大学4年生編