コウです、よろしくお願いします!
「ゼロからプログラミングを始める」人に役立つ情報を発信しています!
今回はDay31コードを学ぼう1の「両方正しければ合格」の攻略になります。

解答例と解説
解答例と解説から確認しましょう!
解答例
コードの解答例は以下のようになります。

解答例を動画で確認する
上記のコードを実行した結果がこちらになります。
ステージ攻略「両方正しければ合格」
攻略
ステージを攻略していきましょう!

Byteの前には宝石が並んでいて、
途中で右に曲がった先に光っていないスイッチがあります。
宝石は進んでいけば取れますが、
スイッチはどのように切り替えるのでしょうか?
説明文にもありますが、
「宝石のマスにいて、さらに左が行き止まり」
の場合に右に進んでスイッチを切り替えます!

ステージを見てみると、
光っていないスイッチがある列の宝石の左側は行き止まりになっているので、
上の条件を使えば3つとも切り替えられそうです。
論理AND演算子「&&」
「宝石のマスにいて、さらに左が行き止まり」
このさらにを表すのが論理AND演算子の「&&」です!
これを使うとタイトルにあるように、「宝石のマスにいる」「左が行き止まり」の両方正しい場合に指示通り動くことになります。
逆に言えばそれ以外の場合には指示通り動きません。
例えばByteの初期位置から2マス先は左側が行き止まりですが宝石はありません。
ですので、右に進んでいってしまうことはないというわけです!!
両方正しくないと指示通り動いてくれないので、
使い所が難しいように感じますが、
それ以外では動かないので使い所を限定できる分
使いやすさがあるかなと思います!
まとめ
光っていないスイッチの列の法則に気づくことができましたでしょうか!
プログラミングは基本的には繰り返す作業を効率化していくことが目的なので
ステージの法則性を見つける目を養うことができると役に立つと思います!!
- 「&&」はAND演算子
- AND演算子は、さらにを表すことができる
次回はDay32「一方でも正しければ合格」でお会いしましょう!ではまた!!
