Programming

Day50「値を増やす」|Swift Playgrounds 攻略と解答例

コウです、よろしくお願いします!

「ゼロからプログラミングを始める」人に役立つ情報を発信しています。

今回はなんとDay50!

ついに50日目ですよみなさん。

あなたがもし毎日見てくれているとしたら、

2ヶ月程度経っていることになります。

それだけの時間を自主勉強に費やしている人はあまりいないかもしれませんね!

それでは「値を増やす」どうぞ!!

小学生から社会人までおすすめ!!プログラミング言語『Swift』について!【今始める理由と学び方】 こうといいます、よろしくお願いします! 小学校で教師をやっていた経験を活かして、 プログラミングについて悩みをお持ちの保護...

解答例

まずは解答例を確認しましょう。

解答例

コードの解答例は次のようになります。

解答例を動画で確認する

上記のコードを実行した結果がこちらになります。

ステージ攻略「値を増やす」

ステージを攻略していきましょう!

まずはステージをどうまわるか考えます。

今回はワイヤーフレームがあり、宝石の位置や数が毎回変わります。

ワイヤーフレームについては↓こちらからどうぞ

Day26「関数をじょうずに使う」【Swift Playgrounds 攻略と解答例】 コウです、よろしくお願いします! プログラミング経験は全くない素人ですが、「ゼロからアプリ開発できるのか!?」ということで日々勉...

説明文にもありますが、

すべてのマスで宝石があるかどうかを調べなければなりません

そこでwhileループを使います。

whileループは、与えた条件から外れるまで指示を繰り返すのでしたね。

詳しくは↓から!

Day34「条件を決めてコードをループする」|Swift Playgrounds 攻略と解答例【ゼロから学習】 コウです、よろしくお願いします! 「ゼロからプログラミングを始める」人に役立つ情報を発信しています! 今回はDay34コー...

whileループの条件

whileループの条件は『壁にぶつかるまで』とします。

しかし、この条件では左の画像のようにはじめの直線しか調べることができません。

ぶつかった時点でwhileループは終了しますからね。

そこで、ループの中に仕掛けを作ります。

それは、『壁にぶつかったら右を向く』というものです。

③の13行目から15行目までの部分です。

こうすることで、右を向いた後にも壁があるということでなければwhileループは継続します。

ステージの端から端まで行って右を向くとそこも壁なので、ここでループが終わるということです。

宝石を取ったら+1

さて、数を数えていきます。

前回までは宝石を取ったら変数の値を自分で書き換えていました

例えば、初期値が0の時に宝石を取ったら

gemCounter = 1

そこからもう1つ取ったら

gemCounter = 2

というように0を1に、1を2に書き換えていた。

これはあまり利便性が高くありませんよね。

結局自分で数を数えなければならないので。

数えるのをコンピュータに任せるにはどうしたらいいか。

それが『+1』です。

これを使えば自動的に前の値に1を足すことができます。

以下のような式で使います。

var 変数名 = 初期値

変数名 = 変数名 + 1

まずは変数を宣言します。

その上で『変数名=変数名+1』とすることで、

ここからの変数は今までの変数に+1したものだよ

とSwiftに教えることができます。

gemCounter = gemCounter + 1』を

『collectGem()』の後ろに付けることで、

宝石を取ったら+1』が完成します!

まとめ:値を増やす

前回と同じステージ名で、同じように値を増やしましたが

増やし方が違いましたね。

今回のポイントを振り返りましょう。

ポイント
  • 『変数名 = 変数名 +1』で1ずつ数を増やすことができる

次回はDay51「7つの宝石を集める」でお会いしましょう!それでは!!

小学生から社会人までおすすめ!!プログラミング言語『Swift』について!【今始める理由と学び方】 こうといいます、よろしくお願いします! 小学校で教師をやっていた経験を活かして、 プログラミングについて悩みをお持ちの保護...