IchigoJamに関するクイズを解くと出てくるパスワードを使って、ミヤフィセントに勝ってプレゼントをもらおう!
問題のひとつ、迷路を実際IchigoJamでプログラミングしていく様子を紹介します。
チームで立ち向かう、南大阪の謎の人物、ミヤフィセントからの挑戦!
1 右、2 右、3 右・・・。方眼紙にスタートとゴール、数字と方向が書いてある紙。道筋が鍵になるらしい!?
スタートから右、右、右とたどってもどこにもたどり着かない。
あ、数がちょうど16コある!壁をその方向に伸ばすのでは?
そう、知っている人にはおなじみ迷路を作るアルゴリズムの一つ、棒倒し法ですが、直感的に思いつく子供たちすごい!
迷路が現れ、ゴールまで辿れました!
さて、ここで棒倒し法のアルゴリズムを作ってみましょう!
棒倒し法とは
1. 四角く囲まれた壁の中に
2. 1つ飛ばしに柱を並べて
3. その柱全部を上下左右どこかの方向に倒して
できる迷路です。
四角く囲まれた壁づくり
100 CLS 110 FOR I=0 TO 10 120 LC I,0:?"O":LC 0,I:?"O" 130 LC I,10:?"O":LC 10,I:?"O" 140 NEXT
次に柱を並べよう
150 FOR I=1 TO 4 160 FOR J=1 TO 4 170 LC I*2,J*2:?"O" 180 NEXT 190 NEXT
上下左右をIchigoJamにどう伝える?
例えば上とは横の位置はそのまま、縦の位置をマイナス1した場所のことなので、0,-1。下は 0,1・・・。
こうしてでてくる8つ数字を順に配列にいれて
145 LET[0],0,-1,0,1,-1,0,1,0
ランダムに決めた方向Dを使って、柱から1つ倒して表示!
175 D=RND(4) 176 LC I*2+[D*2],J*2+[D*2+1]:?"O"
迷路できた!
こうして解いた3枚の迷路、それら道筋とぴったり合うのものの裏には新たな問題!
3つの挑戦。
1つ目、伏せ字されている英単語・・・そう、これはおなじみIchigoJamのコマンド!
サクサク解いて、キーワード「SA」をゲット!
IchigoJamも使ってパズルを解く!
優しい、ミヤフィセントw
全部解いたと思ったら、真のボス「モーリィ」登場!爆笑する子供!
隠された問題を探す子供たち
アルファベットも混ざっている、なぞの記号、16進法を使ったキャラクターパターンがでてくるパズル。
「モリ」と表示されるサンプルでは、下はなんと表示される!?
IchigoJamで動かせば簡単!・・・と思いきや、モーリィによって破壊されてしまっていて使えない!
ってことで、みんなで協力して解きました。パスワードは「メリクリ」
パスワードを見事、プレゼントをゲット!
IchigoJamの定番コマンドがデザインされた、プログラミングに便利な特製方眼紙ノート!
動物の子供は遊びが学びと学びますね。人も一緒。楽しい遊びが楽しいのは、学びだから。
PCN大阪&PCN南大阪からの本当のクリスマスプレゼントは「楽しくできた」という目には見えない経験。
ミヤフィセントと!
モーリィと!
子供も大人も楽しいPCN大阪&PCN南大阪のクリスマス会、お誘いありがとうございました!
プログラミングのワクワクをいかに伝えるか、実行と企画し続けること、毎回いろんな学びがあります。
IchigoJam ver 1.3以降のカーソル表示機能を使って、迷路の早解きゲームにしてみました。
最初のINPUTでワールド番号を入力、どんどん大きくなる迷路、全クリアタイムを競ってみよう!
100 INPUT"WORLD?",N:SRND N 110 T=0 120 FOR N=1 TO 10 130 W=N*2+2:CLS 140 FOR I=0 TO W 150 LC I,0:?"O":LC 0,I:?"O" 160 LC I,W:?"O":LC W,I:?"O" 170 NEXT 180 LET[0],-1,0,1,0,-1 190 FOR I=1 TO N 200 FOR J=1 TO N 210 LC I*2,J*2:?"O" 220 D=RND(4) 230 LC I*2+[D],J*2+[D+1]:?"O" 240 NEXT 250 NEXT 260 X=1:Y=1:CLT 270 A=X-BTN(28)+BTN(29) 280 B=Y-BTN(30)+BTN(31) 290 IF SCR(A,B)=0 X=A:Y=B 300 LC X,Y,1 310 IF X<W-1 OR Y<W-1 GOTO 270 320 LC W+2,W/2:?TICK() 330 T=T+TICK():WAIT 30 340 NEXT 350 LC W+2,W/2:?T
N:ワールドID、T:タイム、N,W:迷路サイズ、I,J:ループ変数、D:方向、X,Y:自キャラ座標、A,B:増分
(RUN on IchigoJam web)
links
- キラキラIoTプログラミングワークショップ WS.LEDサンプル集 with IchigoJam 1.4 in 大阪
- PCN大阪
- PCN南大阪