19-4 オブジェを作ろう!「赤と青と緑の細い板」
完成形

解説動画
解答画像
解答コード
player.onChat("19-4", function () {
let num = 0
for (let i = 0; i < 6; i++) {
for (let j = 0; j < 3; j++) {
if (num == 1 || num == 4) {
agent.transfer(1, 27, 1)
} else if (num == 3) {
agent.transfer(1, 18, 1)
} else {
agent.transfer(1, 10, 1)
}
agent.place(FORWARD)
agent.move(RIGHT, 1)
}
agent.move(LEFT, 3)
agent.move(UP, 1)
num += 1
}
})
変数が変化しているか確認する方法



教え方のポイント
- 難しい場合、まずは色なしで作るところから
- 条件を良く整理させる(〇本目と〇本目なら〇色に、〇本目と〇本目なら〇色にしたいか)
よくある間違い
- 変数を作る(初期値設定)プログラムがない
- 変数を変えるプログラムがない
- 変数を変えるタイミングがおかしい
- 変数自体がプログラムに入っていない
- 変数を作るプログラムと変数を変えるプログラムを見間違えている
- 2個目の形を作るときに次の作る位置まで戻ってきていない
- (例:上に向かって棒を作ったのに、次の繰り返しの前に下に戻ってくるプログラムがない)
- 2個目の形を作り、次の場所に移動するときに1個目の形にぶつかってしまっている。
- (変数を何種類か作っちゃっている場合)変数を作るプログラム、変数を変えるプログラム、変数自身の名前があっていない。別の変数になっている。
- 条件の「変数=〇」の丸の部分が間違っている
- 転送元のスロット番号が間違っている
- 転送先のスロット番号が間違っている
- エージェントがブロックを持っていない
- 一度失敗したときにエージェントの一番左上のスロットにブロックが残ってしまっている
- 「または」の部分が「かつ」などになっている
- 「または」の両サイドにうまく条件が入っていない
