Swift Playgrounds

コードを学ぼう2【エキスパートを育てる】解答例と解説

エキスパートを育てる

解答例

let expert = Expert()

func turnAround() {
  expert.turnLeft()
  expert.turnLeft()
  expert.moveForward()
  expert.moveForward()
}

func completeSide() {
  expert.moveForward()
  expert.moveForward()
  expert.collectGem()
}

for i in 1 ... 2 {
  completeSide()
  turnAround()
  expert.turnRight()
}

completeSide()
expert.turnLockDown()
turnAround()
expert.turnRight()

for i in 1 ... 3 {
  expert.moveForward()
}

expert.turnLeft()

for i in 1 ... 3 {
  completeSide()
  turnAround()
  expert.turnLeft()
}

解説

『initialize』とは、初期化という意味ですね。
最初にこの部分に、Expert()と入れたら初期化完了で、やっとエキスパートが現れます。
画面クリックしたまま動かすと、どの程度鍵を回して下げればいいのかわかりますね。
今回は、一度回せば(turnLockDown())全て平面になるようです。
関数、ドット表記、forループを駆使して、ゴールを目指しましょう。

要点まとめ

・エキスパートはturnLockUp()に加えてturnLockDown()もできる