データ x, y を入力 x^2 + y^2 が 5^2 以下なら、円の内部 (IN)、そうでなければ、外部(OUT) 条件によって、出力を変更する if 文を利用する。 == IF 構文 if ( 条件 ) then ブロック 1 (文の集まり) // 条件が成立した時に実行する文 else ブロック 2 (文の集まり) // 条件が成立しない時に実行する文 endif # 注意 : ブロックと、if/else/endif は、別の行にする必要がある 不正立の場合の省略形式 ブロック 2 が不要ならば、else とブロック 2 の両方が省ける。 if ( 条件 ) then ブロック (文の集まり) // 条件が成立した時に実行する文 endif ブロックが文一つの場合 then/endif もいらない if ( 条件 ) 文 この場合は、同一行に書く必要がある。 == フローチャート プログラムの流れを示す図 == if 文の条件の書きかた 古い形 .gt. 新しい形 > == read 文 read(5,*) x, y, z では、 10 20 40 のように、スペースあるいは、改行で区切って、入れることができる。 == 実数を表す数値を書く場合は、 3.0 のように、かならず、小数点をつける。単に 3 とすると、整数値として扱われる。 整数を整数で割る場合と、実数を実数で割る場合では結果が異るので、気を付 けないといけない。 # 整数同士の割り算の場合、結果は、小数点以下を切り捨てて、整数値にして # しまう # x = 1/2 は、x = 0 と同じ # x = 1.0/2.0 は、x = 0.5 と同じ 実数を扱う時には、小数点を付けましょう。 == 整数と実数が混在する場合は、整数は、実数に変換されて、実数で計算されてしまう。 == a の b 乗は、 a ** b とすればよい。 b が整数か実数かによって、結果が異る b が整数 a を b 回かける b が実数 exp(b * log(a)) となる # 誤差が生じてしまう !! 羃乗の指数だけは、実数を扱う場合でも、整数でよければ整数にする。