27-9
完成形

解説動画
解答画像

解答コード
player.onChat("27-9", function () {
for (let i = 0; i < 3; i++) {
for (let j = 0; j < 3; j++) {
for (let k = 0; k < 2; k++) {
if (i == 0 && j == 1 && k == 1) {
agent.transfer(1, 10, 1)
} else if (i == 2 && j == 1 && k == 0) {
agent.transfer(1, 27, 1)
} else {
agent.transfer(1, 19, 1)
}
agent.place(FORWARD)
agent.move(UP, 1)
}
agent.move(DOWN, 2)
agent.move(RIGHT, 1)
}
agent.move(LEFT, 3)
agent.move(BACK, 2)
}
})
教え方のポイント
- 難しい場合、まずは色なしで作るところから
- 条件を良く整理させる(〇本目と〇本目なら〇色に、〇本目と〇本目なら〇色にしたいか)
- ブロックの持たせ方に注意!
- エージェントのアイテム欄に注意! ブロックがなくなっていないか、減っていないかをよく確認する。
- 失敗するたびにエージェントのアイテムを確認する。
- ※1番左上のスロットにアイテムがたまっている可能性がある。
よくある間違い
- iの変数を宣言してしまっている
- 繰り返しの数が間違っている
- 変数Iと変数Jと変数Kの位置が間違っている
- 転送元のスロット番号が間違っている
- 転送先のスロット番号が間違っている
- エージェントがブロックを持っていない
- 一度失敗したときにエージェントの一番左上のスロットにブロックが残ってしまっている
- 比べるブロックで「" ◯◯"= "◯◯"」の方を使ってしまっている場合がある(「"」がついていな方を使う)
- 「または」の部分が「かつ」などになっている
- 「かつ」の部分が「または」などになっている
- 「または」の両サイドにうまく条件が入っていない
- 「かつ」の両サイドにうまく条件が入っていない
- 「または」や「かつ」の条件の中に入っている変数を間違えてる
- 「もし」の条件内に入っている変数を間違って入れている