演習課題「else if 1」
あなたは今、スペースで区切られた 2 つの正の数の入力に対して、足し算をするプログラムを書こうとしています。
ですが、入力には必ずしも 2 つの数が入力されるわけではなく、「1 個以上の数」が渡されることになっています。
そこで、与えられた数字の数に応じてメッセージを出すことにしました。
数字の数が 1 個なら「少な過ぎます」と表示します。
数字の数が 2 個ならその 2 つの数値を足した値を出力します。
それ以外の場合、「多過ぎます」と出力します。
右のコードは書きかけです。
このプログラムを完成させてください。
プログラムを実行して、想定通り出力されれば演習課題クリアです!
期待する出力値
少な過ぎます
演習課題「else if 2」
ゲームのマップ上でのキー操作を書くことにしました。
メニューを開いたり、マップ移動を選択したり色々実装すべきことがありますが、まずは方向キーの入力による移動の処理を書くことにしました。
標準入力には入力されるキーの名前が入力されます。
ただし、このゲーム内部では入力されたキーはそれぞれのコードに変換されています。
例えば「上」なら「A」のようになっています。
入力が「A」「B」「C」「D」であった場合は、それぞれ「上に進む」「下に進む」「右に進む」「左に進む」と出力してください。
その他の場合は、入力されたキーをそのまま出力してください。
プログラムを実行して、想定通り出力されれば演習課題クリアです!
#12:複数の条件分岐
このチャプターでは、FizzBuzz問題の一部を題材に、JavaScriptにおける複数の条件分岐(else if)を学習します。
MDN web docs
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/if...else
else if は構文というより書き方のパターンです。
if、else 共にブラケットを伴わない書き方ができるため、if (条件式) {
//
} else {
if (条件式) {
//
} else {
if (条件式) {
//
} else {
...
}
}
}
をif (条件式) {
//
} else if (条件式) {
//
} else if (条件式) {
//
} else {
// ...
}
のように書くことができるということです。
今回の FizzBuzz の間違った例のように、前の分岐が後ろの分岐の必要条件になっている場合はその分岐までたどり着くことがなくなってしまいます。
これは if も else if も、上から順々に評価していくからです。
この評価の流れに気をつけるようにしましょう。