Hour of Codeで学ぶプログラミング基礎の基礎 第22回
Swift PlaygroundsでHour of Code
Swift言語で独自の関数を定義してその役割を学ぶ
2017年08月04日 17時00分更新
前回に引き続き、「Swift Playgrounds」のHour of Codeのコースを使って、プログラミングを学んでいきましょう。今回は関数や繰り返しについて学びます。
レベル4から次に進むと、最初に関数についてのイントロダクションが始まります。前回はコマンドが何かをするための指示や命令のことであることを学び、並べる順番を考えました。関数とは、そうしたコマンドをいくつかまとめたもので、名前を付けて定義します。名前を付けた関数は、あとからいつでも呼び出して使うことができます。関数が呼び出されると、関数の中に定義したコマンドが実行されます。
レベル5:新しい挙動を作る
今回のレベルでは、前回出てこなかったturnRight( ) (右を向く)を、これまでに使ったコマンドだけで作っていきます。
まずは、課題の書かれたエリアにある赤い文字をタップして用語の解説を見てみましょう。コーディングとは、コマンドなどでアルゴリズムを組み立ててプログラムを作ることです。
コンポジションとは小さい部分の組み合わせで大きな課題を解くことです。
ピンチで拡大してバイトと宝石の位置関係を確認しましょう。
バイトが宝石までたどり着くためには、階段を下りたところで右を向く必要がありますが、コマンドの候補にturnRight( )はありませんね。ヒントをタップしてみましょう。すでにあるコマンドを組み合わせることで右を向くことができそうです。
それではプログラムを考えていきましょう。はじめに階段を下りるところまでを作ります。moveForward( )を3つ入力します。
ここでバイトは右に向きを変える必要があります。選択できるコマンドは、collectGem( ), moveForward( ), toggleSwitch( ), turnLeft( )です。右を向くために組み合わせられそうなのは、turnLeft( )だけですね。turnLeft( )が1つでは、進みたい方向の逆方向を向いてしまいます。しかし、もう2つ組み合わせることで進みたい方向となります。turnLeft( )を3つ入力します。
あとは宝石のマスまで進んで、宝石を取りましょう。moveForward( )を3つとcollectGem( )を入力します。
それでは、「実行」ボタンをタップしてバイトを動かしましょう。バイトが階段を下りて左に3回向きを変えます。本来進みたい方向を向いたら前に進み、宝石を取ることができました。これでレベルクリアです。
次のページをタップして、次のレベルへ進みましょう。
この連載の記事
- 第24回 Minecraftで関数使ったプログラミングに挑戦!
- 第23回 Minecraftで「エージェント」を使ったプログラミングを学ぶ
- 第21回 iPad上でSwift言語を使ってキャラクターの動きを学ぶ
- 第20回 Minecraft上でアイアンゴーレムやゾンビ操るプログラミング
- 第19回 Minecraft上でニワトリや牛を動かすプログラミング
- 第18回 映画「モアナと伝説の海」のカカモラ戦士の踊りをプログラミング
- 第17回 映画「モアナと伝説の海」のモアナとカカモラの海賊を倒すプログラミング
- 第16回 映画「モアナと伝説の海」のモアナと海賊カカモラの船に近づくプログラミング
- 第15回 映画「モアナと伝説の海」のモアナと魚を捕まえるプログラミング
- この連載の一覧へ