初心者のためのゲームプログラミング入門

プログラミングとゲームの杜

初心者のためのプログラミング入門 & ゲームプログラムの作り方入門

Small Basic 入門

11.穴埋め算数ドリルを作ろう その3

 

[ 穴埋め算数ドリルを作ろう その2 ] の続きです。

 

 

正解数を表示しよう

すべての問題をクリアした後に正解した数を表示します。
見やすいように1行空けて表示します。

正解した数を表示

 

正解をカウントする変数を用意して、正解のたびに加算するだけです。
プログラムを見てみましょう。

正解をカウントする

5行目、正解をカウントする変数 seikai を初期化しています。
37行目、正解したときのみ変数 seikai に+1しています。
45行目、カーソルを1行下げ、空白行を作ってます。

 

 

リトライの機能を付けよう

何度でもプレイできるようにリトライの機能を付けます。
変更点を見てみましょう。

リトライの機能を付ける

2行目、again: これはラベルです。リトライの時、この場所に戻ります。

49行目、2行改行します。
50行目、Pause( ) を使うと次のように表示されます。

pause()によるメッセージ

Pause( ) はメッセージを表示して待機状態になります。
何かキーを押すことで処理が進みます。

51行目、Clear( ) は画面をクリアします。
52行目、Goto again により2行目のラベル again: の行へ処理が戻ります。

 

実行して確認しましょう。
これでリトライ出来るようになりましたね。

 

 

リトライのメッセージを変えよう

Pause( ) の待機状態とプログラムが終了したとき、どちらも同じメッセージが表示されます。
Press any key to continue…
というメッセージです。
これでは分かりにくいので日本語で表示したいと思います。

日本語のメッセージで待機する

このようにします。

 

日本語で待機メッセージ

49行目、Program.Delay(ミリ秒) これは処理を指定した時間だけ停止します。
Delay(2000) であれば2秒ほど止まります。

51行目、日本語メッセージを表示します。Write( ) を使うことでメッセージの後でカーソルを点滅させます。

52行目、Read( ) を使って入力待ちにしています。
Read( ) によって入力された値は使いません。
このように通常とは違う使い方も覚えていきましょう。

 

 

これで「穴埋め算数ドリル」は完成しました。
プログラムは次のようになります。

穴埋め算数ドリルのプログラム

 

 

プログラムを改造しよう

プログラムが完成したら改造に挑戦してみましょう。
サンプルを打ち込んでいるだけでは、なかなか覚えられません
プログラミングスキルを身に付けるためにも、改造は有効です。

 

どんな改造をすればいいのか分からないなら、
次の改造はどうでしょうか?

・引き算や掛け算を使った穴埋め問題に変更する
・リトライの時、end と入力したらプログラムを終了する
・足し算、引き算、掛け算がランダムに出題されるようにする
・3+4+?=9 のように問題を長くする
・3-?+8=6 のように足し算と引き算の組み合わせの問題にする

などなど挑戦してみてください。