25-3

完成形

解説動画

解答画像

解答コード

player.onChat("25-3", function () {
    for (let i = 0; i < 3; i++) {
        for (let j = 0; j < i + 2; j++) {
            agent.place(FORWARD)
            agent.move(UP, 1)
        }
        agent.move(DOWN, i + 2)
        agent.move(RIGHT, 1)
    }
})

教え方のポイント

  • iは必ず最初0なので「i × ◯ + △」「i × ◯」部分は必ず0になるので△には最初に進んで欲しい数が入る
  • ◯には増加量の数字が入る
  • そのステージで使ってよい変数の数が何個なのか伝える
  • 繰り返しの数とその分戻らないといけない数字が異なることに注意
  • 例)右に行く繰り返しの式は「4 - i」だが左に進む数の式は「5 - i」になる(繰り返しは0からカウントするから)
  • ステージ10の場合まずは横に移動する数を一定にし、縦の長さのみ変わるプログラムを作ってもらう
  • その後に左に移動するための式を考えてもらう

よくある間違い

  • iの変数を宣言してしまっている
  • 繰り返しの数が間違っている
  • 変数Iと変数Jと変数Kの位置が間違っている