というルールです。
「Fizz Buzzのプログラムを組ませて、プログラミング経験の有無をテストする」というのは最近知りました。
子どもたちのプログラミング課題としても面白いと思います。
表示プログラム
基本的な表示プログラムです。画面に数字・「FIZZ」「BUZZ」「FIZZBUZZ」を表示します。
10 '*FIZZ BUZZ 20 FOR I=1 TO 99 30 IF I%3=0 ?"FIZZ"; 40 IF I%5=0 ?"BUZZ"; 50 IF I%3>0 AND I%5>0 ?I; 60 ?" "; 70 NEXT
ゲーム
ただ画面に表示するだけでは面白くないので、ゲームにしてみました。
- 3の倍数の時は、キーボードの「3」のキーを押す
- 5の倍数の時は、キーボードの「5」のキーを押す
- 3と5の公倍数の時は、「3」→「5」の順でキーを押す
- 1秒以内に押さないとゲームオーバーです
10 '*FIZZ BUZZ GAME 20 CLV:CLS 30 FOR I=1 TO 99 40 CLT 50 IF I%3=0 GSB @3 60 IF I%5=0 GSB @5 70 IF I%3>0 AND I%5>0 ?I;:WAIT 60 80 ?" "; 90 NEXT 100 IF I=105 ?"*MISS":BEEP 30,30 110 END 120 @3 130 IF TICK()>60 I=105:RTN 140 IF INKEY()!=ASC("3") GOTO @3 150 ?"FIZZ";:BEEP 160 RTN 170 @5 180 IF TICK()>60 I=105:RTN 190 IF INKEY()!=ASC("5") GOTO @5 200 ?"BUZZ";:BEEP 210 RTN
以前作った拡張基板「BingoJam」でも遊べます(^_^)
プログラムは、以下の2行を追加するだけです。
25 OUT 0:OUT 8,0 35 OUT I/10*16+I%10
1秒の時間制限がハードで、99までなかなか辿り着けません…(^_^;)
倍数の性質が体感的にわかるゲームだと思います。