if then 〜 else 〜 end if
サンプルプログラムNo.3「2次方程式の解」
2次方程式の係数を与えることで、解の判定式で実数解がいくつあるかどうか判定し、解を表示する。
サンプルプログラムNo.4「Cのとき摂氏→華氏、Fのとき華氏→摂氏、Eのとき終了」
文字型変数の入力方法は、「10,'C'」のように、シングルクォーテーションで囲む。
終了方法として乱暴だが[Ctrl]+[C]でもよい。
if then 〜 else 〜 end ifの構文
基本形
if (条件) then
条件を満たしたとき実行する文
end if
基本形(elseを使う)
if (条件) then
条件を満たしたとき実行する文
else
条件を満たさないとき実行する文
end if
拡張形
if (条件A) then
条件Aを満たしたとき実行する文
else if (条件B) then
条件Aを満たず、条件Bを満たすとき実行する文
else if (条件C) then
条件Aかつ条件Bを満たず、条件Cを満たすとき実行する文
...
end if
のように、elseやif thenを組み合わされる。
条件は、
- (A.eq.B)[AとBは等しい]
- (A.gt.B)[AはBより大きい] (A.lt.B)[AはBより小さい]
- (A.ge.B)[AはB以上] (A.le.B)[AはB以下]
のほかに.and. .or. .not.を用い、
((a.ge.b).and.(a.le.c))のように[aはb以上かつc以下]のように書くことができる。
- ifの中にifがあっても良いがif then〜end ifが互い違いになってはいけない。
- if then〜end ifとは異なるif構文(算術if)は使わない方が良い[推奨]。
演習問題
- 身長と体重を読み込んでローレル指数を計算しやせすぎか太っているかを判定するプログラムを作れ。ここで身長をh(m),体重をw(kg)で与えたとき、w*10.0/(h**3)で与えられ、100以下:too thin、100〜115:thin、115〜145:standard、145〜159:fat、159:too fatとする。
2002年度 fortran 演習
担当教官:山中康裕(galapen@ees.hokudai.ac.jp)・豊田威信(toyota@lowtem.hokudai.ac.jp)