「条件分岐 if」(2007/10/20 (土) 23:35:11) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
>[if exp="a == 1"]
>aは1です
>[endif]
このようにしてKAGでは条件ごとに実行するスクリプトを変えることが出来ました
ではTJSではどのようにやるのでしょうか
>&italic()// 1から3の数字を入力させるスクリプト
>var i;
>i = System.inputString("数字の入力", "1から3の数字を入力して下さい", "");
>if(i == 1) System.inform("あなたの入力した数字は1です");
>if(i == 2) System.inform("あなたの入力した数字は2です");
>if(i == 3) System.inform("あなたの入力した数字は3です");
System.inputString("数字の入力", "1から3の数字を入力して下さい", "");
というのは文字を入力させる関数です。
""の中を色々変えるとそれぞれ何を表しているのか分かると思います
試してみてください
それぞれの""を区切っている,(コンマ)を忘れないようにして下さい
入力された文字を変数に代入させるにはi = をつけて代入させます
こうすると入力された文字がiに代入されます
if(条件式) スクリプト;
このようにif()を使うと条件によってスクリプトを実行するかどうかを変えることができます
条件式が真ならば(成り立つならば)スクリプトが実行されます
endifにあたる部分がないのですがどこまで実行されるのでしょうか?
それを表すためには{}を使います
if(条件式) {
スクリプト;
ここまで実行される;
}
条件式が真のときに{}で囲まれた範囲が実行されます
条件式が偽のとき(成り立たないとき)には{}で囲まれた範囲は無視されます
if()の後にスクリプトが一文だけならば{}は省略できます
二文以上の時には必ず{}で囲まなければなりません
先のスクリプトを{}を付けて書くとこうなります
>&italic()// {}を付けて書いてみる
>var i;
>i = System.inputString("数字の入力", "1から3の数字を入力して下さい", "");
>if(i == 1) {
> System.inform("あなたの入力した数字は1です");
>}
>if(i == 2) {
> System.inform("あなたの入力した数字は2です");
>}
>if(i == 3) {
> System.inform("あなたの入力した数字は3です");
>}
{}で囲まれた部分が何文字文か下がっています
これはやらなくてもスクリプトは動くのですが、見易いように普通は下げます
これをインデントといいます
インデントする時にはスペースを連打するのではなくてタブキーを1度押してください
一般的なキーボードならばQキーの左隣にあります
>[if exp="a == 1"]
>aは1です
>[endif]
このようにしてKAGでは条件ごとに実行するスクリプトを変えることが出来ました
ではTJSでのやり方を説明します
>&italic()// 1から3の数字を入力させるスクリプト
>var i;
>i = System.inputString("数字の入力", "1から3の数字を入力して下さい", "");
>if(i == 1) System.inform("あなたの入力した数字は1です");
>if(i == 2) System.inform("あなたの入力した数字は2です");
>if(i == 3) System.inform("あなたの入力した数字は3です");
System.inputString("数字の入力", "1から3の数字を入力して下さい", "");
というのは文字を入力させる関数です。
""の中を色々変えるとそれぞれ何を表しているのか分かると思います
試してみてください
それぞれの""を区切っている,(コンマ)を忘れないようにして下さい
入力された文字を変数に代入させるにはi = をつけて代入させます
こうすると入力された文字がiに代入されます
if(条件式) スクリプト;
このようにif()を使うと条件によってスクリプトを実行するかどうかを変えることができます
条件式が真ならば(成り立つならば)スクリプトが実行されます
endifにあたる部分がないのですがどこまで実行されるのでしょうか?
それを表すためには{}を使います
if(条件式) {
スクリプト;
ここまで実行される;
}
条件式が真のときに{}で囲まれた範囲が実行されます
条件式が偽のとき(成り立たないとき)には{}で囲まれた範囲は無視されます
if()の後にスクリプトが一文だけならば{}は省略できます
二文以上の時には必ず{}で囲まなければなりません
先のスクリプトを{}を付けて書くとこうなります
>&italic()// {}を付けて書いてみる
>var i;
>i = System.inputString("数字の入力", "1から3の数字を入力して下さい", "");
>if(i == 1) {
> System.inform("あなたの入力した数字は1です");
>}
>if(i == 2) {
> System.inform("あなたの入力した数字は2です");
>}
>if(i == 3) {
> System.inform("あなたの入力した数字は3です");
>}
{}で囲まれた部分が何文字文か下がっています
これはやらなくてもスクリプトは動くのですが、見易いように普通は下げます
これをインデントといいます
インデントする時にはスペースを連打するのではなくてタブキーを1度押してください
一般的なキーボードならばQキーの左隣にあります
表示オプション
横に並べて表示:
変化行の前後のみ表示: