if (<condition>) { <commands>; <commands> <commands> } else if (<condition>) { <commands> } else { <commands> }
このバージョンの gnuplot は、if/else のブロック形式をサポートしていま す。キーワード if, else の後ろに開始カッコ "{" が続く場合、"}" で 終了するブロックまでのすべての文 (複数の入力行も可) に条件的な実行が適 用されます。if コマンドは入れ子にすることもできます。
バージョン 5 より前の gnuplot では、if/else コマンドの通用範囲は 1 行 内に留まっていましたが、現在は複数行を中カッコ { } で囲んで書くことが できます。古い形式も一応残されていますが、それは中カッコのブロック内で 使うことはできません。
以前の書式:
if (<条件>) <コマンド行> [; else if (<条件>) ...; else ...]
キーワード if が "{" をともなわない場合は、<条件> が真 (ゼロでない) ならば <コマンド行> のコマンド (複数も可) が実行され、偽 (ゼロ) ならば スキップされます。いずれの場合も入力行の最後になるか、else が現れる ところまでそれが行われます。; を使うと同じ行に複数のコマンド置くこと が可能ですが、条件付きのコマンド (if の構文自体) はそこでは終らない ことに注意してください。
竹野茂治@新潟工科大学