Swift Playgrounds

コードを学ぼう2【もっと遠くまで進む 】解答例と解説

もっと遠くまで進む

解答例

let expert = Expert()

func move(distance: Int) {
  for i in 1 ... distance {
    expert.moveForward()
  }
}

move(distance: 6)
expert.turnRight()
move(distance: 2)
expert.turnRight()
move(distance: 5)
expert.turnLeft()
move(distance: 5)
expert.turnLeft()
expert.turnLockUp()
expert.turnLeft()
move(distance: 3)
expert.turnRight()
move(distance: 3)
expert.turnRight()
move(distance: 4)
expert.collectGem()

解説

パラメータ』が出てきました。
パラメータとは、関数に渡される追加情報のことです。
これは毎回必要になるわけではなく、関数をより具体的にするために追加情報が必要な場合に与えられます。

今までであれば

moveForward()
moveForward()
moveForward()
moveForward()
moveForward()
moveForward()

とか

for i in 1 ... 6 {
  moveForward()
}

と書いていたのを、いったん定義してしまえば

move(distance: 6)

と書けばよくて、何度も使えるのでとても便利ですね。

それから、上記の例では『』は『引数』です。
引数は『ひきすう』と読み、関数に渡す値のことを指します。
関数は引数を受け取ると、その結果を出力します。
例えば『6マス分進む』という結果を実行する、ということです。
引数とパラメータですが、今は同じようなものと考えておいて差し支えないと思います。

要点まとめ

・パラメータとは、関数をより具体的にするために与える追加情報のこと