コウです、よろしくお願いします!
なんとこのswift Playgroundsの解説シリーズもDay30まで来ました!!
いつも見ていただいている皆さんのおかげです、ありがとうございます!
引き続きよろしくお願いします^^
それではDay30コードを学ぼう1「NOTで周る」です!
解答例と解説
まずは解答例と解説を確認します!
解答例
コードの解答例は以下のようになります。
解答例を動画で確認する
上記のコードを実行した結果がこちらになります。
ステージ攻略「NOTで周る」
攻略
ステージを攻略していきます!
まずはワイヤーフレームを確認していきます。
ワイヤーフレームについて詳しくはこちらから↓
コードを実行すると、Byteの前の道の形が変わります。
勘の良い方はお気づきかもしれませんが、形は変わってもマスの数は変わっていません!
さらに言うとコード入力スペースには元々for文が書かれていて、13という数字が入っています
そしてマスの数を数えると13マス…
ここまでくればお気づきでしょうか!笑
マスの数が13マスでfor文で13回繰り返すので、
1マスずつ進んでいって確かめていけば良いんですね!!
if ! isBlocked
それでは、具体的には何を確かめればイイんでしょうか?
前回とは変わって今回のステージには宝石がマスごとに置かれている訳ではありません。
そこで登場するのが「isBlocked」です。
「if isBlocked」はもし行き止まりならになります。
これに前回使った論理演算子の「!」をつけます。すると、
「if ! isBlocked」はもし行き止まりでないならになりますね!
これを使えば行き止まりなのか行き止まりでないのかを確かめながら
1マスずつ進んでいくことができます!
行き止まりつまり「if isBlocked」の時にはそのまま進むわけにはいかないので、
「左を向く→1マス進む」になります。
行き止まりでないつまり「if ! isBlocked」の時には進み続けるのみなので、
「1マス進む」になります。
まとめ
13という数字に気がつくことができれば、コードを書くのは難しくないのではないでしょうか!
宝石やスイッチなどが何もない状態で1マスずつ確認しながら進んでいけるのは今後も使えそうなテクニックですね🙋🏻♂️
- 「if ! isBlocked」で行き止まりでない場合の行動を指示することができる
それではDay31「両方正しければ合格」でお会いしましょう!