(57)【特許請求の範囲】
【請求項１】
コンピュータ装置のプロセサに、
問題をディスプレイに表示する問題表示ステップ、
前記問題表示ステップで表示された問題に向けられる手書き入力操作をタッチパネルを通してストローク単位で受け付ける受付ステップ、
正解の数字のストローク数を示すデータとして記憶手段に記憶されているストローク数データが１である場合に前記受付ステップによって１ストローク目の手書き入力操作が受け付けられたとき、前記１ストローク目の手書き入力操作に対応する第１手書きデータを１桁の数字として認識する第１認識ステップ、
前記第１認識ステップによる認識結果としての数字を示す認識結果データが前記問題に対する正解の数字を示すデータとして記憶手段に記憶されている数字データと一致するか否かを判別する第１正解判別ステップ、
前記ストローク数データが２である場合に前記受付ステップによって２ストローク目の手書き入力操作が受け付けられたとき、前記１ストローク目および前記２ストローク目の手書き入力操作に対応する第２手書きデータを１桁の数字として認識し、かつ前記１ストローク目の手書き入力操作に対応する第３手書きデータおよび前記２ストローク目の手書き入力操作に対応する第４手書きデータをそれぞれ十位および一位とする２桁の数字として認識する、第２認識ステップ、および
前記第２認識ステップによる認識結果としての１桁の数字を示す第１認識結果データが前記数字データと一致するか否かを判別するとともに、前記第２認識ステップによる認識結果としての２桁の数字を示す第２認識結果データが前記数字データと一致するか否かを判別する、第２正解判別ステップを実行させるための、情報処理プログラム。
【請求項２】
前記第２認識ステップは複数ストロークが入力されたとき複数種類の認識データを準備しかつ前記複数種類の認識データの各々に対して認識処理を行う、請求項１記載の情報処理プログラム。
【請求項３】
問題をディスプレイに表示する問題表示手段、
前記問題表示手段で表示された問題に向けられる手書き入力操作をタッチパネルを通してストローク単位で受け付ける受付手段、
正解の数字のストローク数を示すデータとして記憶手段に記憶されているストローク数データが１である場合に前記受付手段によって１ストローク目の手書き入力操作が受け付けられたとき、前記１ストローク目の手書き入力操作に対応する第１手書きデータを１桁の数字として認識する第１認識手段、
前記第１認識手段による認識結果としての数字を示す認識結果データが前記問題に対する正解の数字を示すデータとして記憶手段に記憶されている数字データと一致するか否かを判別する第１正解判別手段、
前記ストローク数データが２である場合に前記受付手段によって２ストローク目の手書き入力操作が受け付けられたとき、前記１ストローク目および前記２ストローク目の手書き入力操作に対応する第２手書きデータを１桁の数字として認識し、かつ前記１ストローク目の手書き入力操作に対応する第３手書きデータおよび前記２ストローク目の手書き入力操作に対応する第４手書きデータをそれぞれ十位および一位とする２桁の数字として認識する、第２認識手段、および
前記第２認識手段による認識結果としての１桁の数字を示す第１認識結果データが前記数字データと一致するか否かを判別するとともに、前記第２認識手段による認識結果としての２桁の数字を示す第２認識結果データが前記数字データと一致するか否かを判別する、第２正解判別手段を備える、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、手書き学習支援プログラムおよび手書き学習支援装置に関し、特にたとえば、問題をディスプレイに表示し、表示問題に向けられる手書き数字入力操作をタッチパネルを通して受け付け、受け付けられた入力操作に対応する手書き数字を認識し、認識された数字が正解か否かを判別し、そして判別結果つまり正誤をディスプレイに表示する一連の処理を繰り返し行うことによって学習を支援する、学習支援プログラムおよび学習支援装置に関する。
【背景技術】
【０００２】
従来の学習支援装置としては、特許文献１に開示されたものが知られている。この従来技術では、一連の処理は一定の周期で行われる。この周期を学習者の習熟度に応じて調整することで、学習効果を高めようとしている。
【０００３】
一方、従来の手書き数字認識装置としては、特許文献２に開示されたものが知られている。この従来技術は、手書き数字入力操作をストローク単位で受け付け、受け付けの度に数字認識処理を行う。入力される数字は、最大で２桁であり、数字認識処理は、現時点までに受け付けられた全てのストロークに基づいて行われる。こうすることで、より自然な入力操作を実現し、また認識速度を向上させようとしている。
【特許文献１】特開２００４−３０９６２７号公報
【特許文献２】特許第３５６０３６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の従来技術では、入力の正誤と無関係に一連の処理が進行するので、速やかに正解を入力した場合には、次の問題が表示されるまで長い時間待たされ、間違った回答を入力した場合には、間違いを正す時間がない。このため、快適性に欠け、学習効果が上がらない可能性がある。
【０００５】
また、特許文献１の従来技術は、手書き数字入力に何ら対応していない。これに特許文献２の従来技術を仮に適用できたとしても、快適性および学習効果が特段向上することはない。
【０００６】
それゆえに、この発明の主たる目的は、快適に学習が行え、しかも高い学習効果が得られる、手書き学習支援プログラムおよび手書き学習支援装置を提供することである。
【課題を解決するための手段】
【０００７】
請求項１の発明に従う手書き学習支援プログラムは、ディスプレイとタッチパネルとを有するコンピュータ装置のプロセサに、問題表示ステップ、受付ステップ、認識ステップ、正解判別ステップおよび訂正受付ステップを実行させる。問題表示ステップは、ポインタで示された問題データに基づく画像をディスプレイに表示する。受付ステップは、問題表示ステップによって表示された画像に向けられる手書き数字入力操作をタッチパネルを通してストローク単位（ここでストロークは、タッチオンからタッチオフまでのタッチ軌跡であって、文字を構成する１つ１つの画に相当する）で受け付ける。認識ステップは、受付ステップによる受け付けの度に数字認識処理を行う。正解判別ステップは、認識ステップによって行われた数字認識処理の結果が正解と一致するか否かを判別する。訂正受付ステップは、正解判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作を所定時間に渡って受け付ける。
【０００８】
請求項１の発明が適用されるコンピュータ装置（１０：実施例で相当する参照符号。以下同じ）は、ディスプレイ（１２）とタッチパネル（２０）とを有する。かかるコンピュータ装置のプロセサ（４２）が、請求項１の発明に従う手書き学習支援プログラムを実行する。この結果、ポインタ（Ｐ）で示された問題データに基づく画像は、問題表示ステップ（Ｓ１）によってディスプレイに表示される。問題表示ステップによって表示された画像に向けられる手書き数字入力操作は、受付ステップ（Ｓ３，Ｓ５，Ｓ７；Ｓ３９，Ｓ４３，Ｓ４５；Ｓ５９，Ｓ４３，Ｓ４５）によってタッチパネルを通してストローク単位で受け付けられる。受付ステップによる受け付けの度に、認識ステップ（Ｓ９，Ｓ１１；Ｓ４７，Ｓ４９）によって数字認識処理が行われる。認識ステップによって行われた数字認識処理の結果が正解と一致するか否かは、正解判別ステップ（Ｓ１７，Ｓ１９；Ｓ５３，Ｓ５５）によって判別される。正解判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作が、訂正受付ステップ（Ｓ２５，Ｓ２９，Ｓ３１；Ｓ５７，Ｓ６３，Ｓ６５）によって所定時間（Ｔ１，Ｔ２）に渡って受け付けられる。
【０００９】
請求項１の発明によれば、表示問題に向けられる手書き数字入力操作を受付ステップがストローク単位で受け付け、受付ステップによる受け付けの度に認識ステップが数字認識処理を行い、数字認識処理の結果が正解と一致するか否かを正解判別ステップが判別するので、入力が正解である場合は正解をいち早く知ることができる。また、正解判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作を訂正受付ステップが受け付けるので、入力が不正解である場合は入力を訂正する機会が与えられる。訂正入力操作の受け付けは所定時間に限られるので、快適性が大きく損なわれることもない。このため、快適に学習が行え、しかも高い学習効果が得られる。
【００１０】
請求項２の発明に従う手書き学習支援プログラムは、請求項１に従属し、プロセッサにストローク数判別ステップをさらに実行させる。ストローク数判別ステップは、正解判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作のストローク数が正解のストローク数（たとえば正解が“４”であれば正解のストローク数は典型的には“２”である）を下回るか否かを判別する。訂正受付ステップは、第１訂正受付ステップおよび第２訂正受付ステップを含む。第１訂正受付ステップは、ストローク数判別ステップの判別結果が肯定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作を第１所定時間に渡って受け付ける。第２訂正受付ステップは、ストローク数判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作を第１所定時間よりも短い第２所定時間に渡って受け付ける。
【００１１】
請求項２の発明では、正解判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作のストローク数が正解のストローク数を下回るか否かが、ストローク数判別ステップ（Ｓ２７，Ｓ６１）によって判別される。第１訂正受付ステップ（Ｓ２９，Ｓ６３）は、ストローク数判別ステップの判別結果が肯定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作を第１所定時間（Ｔ１）に渡って受け付ける。第２訂正受付ステップ（Ｓ３１，Ｓ６５）は、ストローク数判別ステップの判別結果が否定的であるとき、受付ステップによって受け付けられた手書き数字入力操作に対する訂正入力操作を第１所定時間よりも短い第２所定時間（Ｔ２）に渡って受け付ける。
【００１２】
正解判別ステップの判別結果が否定的である状態において、入力されたストローク数がまだ正解のストローク数に到達していない場合には、操作者が不正解を認識していない可能性があるが、請求項２の発明によれば、このような場合、訂正入力操作の受け付け時間が延長されるので、高い学習効果を維持できる。
【００１３】
請求項３の発明に従う手書き学習支援プログラムは、請求項１または２に従属し、認識ステップは第１認識ステップを含み、正解判別ステップは第１正解判別ステップを含む。第１認識ステップは、受付ステップによって１ストローク目の手書き数字入力操作が受け付けられたとき、１ストローク目の手書き数字入力操作に対応する第１手書きデータに基づいて数字認識処理を行う。第１正解判別ステップは、第１認識ステップによって行われた数字認識処理の結果が正解と一致するか否かを判別する。
【００１４】
請求項３の発明では、受付ステップによって１ストローク目の手書き数字入力操作が受け付けられたとき、１ストローク目の手書き数字入力操作に対応する第１手書きデータ（Ｄ１）に基づいて、第１認識ステップ（Ｓ９，Ｓ１１）が数字認識処理を行う。第１認識ステップによって行われた数字認識処理の結果が正解と一致するか否かは、第１正解判別ステップ（Ｓ１７，Ｓ１９）によって判別される。
【００１５】
請求項３の発明によれば、正解のストローク数が“１”である場合に、１ストローク目が入力された時点で正誤判別を行えるので、快適性が高まる。
【００１６】
請求項４の発明に従う手書き学習支援プログラムは、請求項３に従属し、認識ステップは第２認識ステップをさらに含み、判別ステップは第２正解判別ステップをさらに含む。第２認識ステップは、受付ステップによって２ストローク目の手書き数字入力操作が受け付けられたとき、１ストローク目および２ストローク目の手書き数字入力操作に対応する第２手書きデータに基づいて数字認識処理を行い、かつ１ストローク目の手書き数字入力操作に対応する第３手書きデータに基づいて数字認識処理を行い、かつ２ストローク目の手書き数字入力操作に対応する第４手書きデータに基づいて数字認識処理を行う。第２正解判別ステップは、第２認識ステップによって行われた第２手書きデータに基づく数字認識処理の結果である第１認識結果と、第２認識ステップによって行われた第３手書きデータに基づく数字認識処理の結果および第２認識ステップによって行われた第４手書きデータに基づく数字認識処理の結果を含んだ第２認識結果との少なくとも一方が正解と一致するか否かを判別する。
【００１７】
請求項４の発明では、受付ステップによって２ストローク目の手書き数字入力操作が受け付けられたとき、第２認識ステップ（Ｓ４７，Ｓ４９）が、１ストローク目および２ストローク目の手書き数字入力操作に対応する第２手書きデータ（Ｄ２）に基づいて数字認識処理を行い、かつ１ストローク目の手書き数字入力操作に対応する第３手書きデータ（Ｄ３）に基づいて数字認識処理を行い、かつ２ストローク目の手書き数字入力操作に対応する第４手書きデータ（Ｄ４）に基づいて数字認識処理を行う。第２手書きデータに基づく数字認識処理の結果である第１認識結果と、第３手書きデータに基づく数字認識処理の結果および第４手書きデータに基づく数字認識処理の結果を含んだ第２認識結果との少なくとも一方が正解と一致するか否かは、第２正解判別ステップ（Ｓ５３，Ｓ５５）によって判別される。
【００１８】
請求項４の発明によれば、正解のストローク数が“２”である場合に、２ストローク目が入力された時点で正誤判別を行えるので、快適性が高まる。また、正誤判別は、第２手書きデータに基づく第１認識結果と、第３手書きデータおよび第４手書きデータに基づく第２認識結果とに基づくので、より的確な判別結果が得られる。
【００１９】
請求項５の発明に従う手書き学習支援プログラムは、請求項３に従属し、第２認識ステップは複数ストロークが入力されたとき複数種類の認識データを準備しかつ複数種類の認識データの各々に対して文字認識を行う。
【００２０】
請求項６の発明によれば、正誤判別の精度が高まる。
【００２１】
請求項７−１２の発明でも、請求項１−６の発明と同様に、快適に学習が行え、しかも高い学習効果が得られる。
【発明の効果】
【００２２】
この発明によれば、快適に学習が行え、しかも高い学習効果が得られる。
【００２３】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００２４】
【図１】この発明の一実施例の外観を示す図解図である。
【図２】図１実施例の内部構成の一例を示すブロック図である。
【図３】図１実施例に適用されるＲＡＭのマッピング状態の一例を示す図解図である。
【図４】図１実施例に適用されるＬＣＤ表示例を示す図解図である。
【図５】図１実施例に適用される認識処理の一例を示す図解図である。
【図６】図１実施例に適用される認識処理の他の一例を示す図解図である。
【図７】図１実施例に適用される認識処理のその他の一例を示す図解図である。
【図８】図１実施例に適用される認識処理のさらにその他の一例を示す図解図である。
【図９】図１実施例に適用される認識処理の他の一例を示す図解図である。
【図１０】図１実施例に適用されるＣＰＵコアの動作の一部を示すフロー図である。
【図１１】図１実施例に適用されるＣＰＵコアの動作の他の一部を示すフロー図である。
【図１２】図１実施例に適用されるＣＰＵコアの動作のその他の一部を示すフロー図である。
【図１３】図１実施例に適用されるＣＰＵコアの動作のさらにその他の一部を示すフロー図である。
【図１４】図１実施例に適用されるＣＰＵコアの動作の他の一部を示すフロー図である。
【図１５】図１実施例に適用されるＣＰＵコアの動作のその他の一部を示すフロー図である。
【図１６】図１実施例に適用されるＣＰＵコアの動作のさらにその他の一部を示すフロー図である。
【発明を実施するための形態】
【００２５】
図１を参照して、この発明の一実施例であるゲーム装置１０は、第１の液晶表示器（ＬＣＤ）１２および第２のＬＣＤ１４を含む。このＬＣＤ１２およびＬＣＤ１４は、所定の配置位置となるようにハウジング１６に収納される。この実施例では、ハウジング１６は、上側ハウジング１６ａと下側ハウジング１６ｂとによって構成され、ＬＣＤ１２は上側ハウジング１６ａに収納され、ＬＣＤ１４は下側ハウジング１６ｂに収納される。したがって、ＬＣＤ１２とＬＣＤ１４とは縦（上下）に並ぶように近接して配置される。
【００２６】
なお、この実施例では、表示器としてＬＣＤを用いるようにしてあるが、ＬＣＤに代えて、ＥＬ（Electronic Luminescence）ディスプレイなどを用いるようにしてもよい。
【００２７】
図１からも分かるように、上側ハウジング１６ａは、ＬＣＤ１２の平面形状よりも大きな平面形状を有し、一方主面からＬＣＤ１２の表示面を露出するように開口部が形成される。一方、下側ハウジング１６ｂは、その平面形状が上側ハウジング１６ａと同程度に形成され、横方向の略中央部にＬＣＤ１４の表示面を露出するように開口部が形成される。また、上側ハウジング１６ａには、ＬＣＤ１２を挟むように、右側に音抜き孔２２ａが、左側に音抜き孔２２ｂが、左右対称に形成される。またハウジング１６には操作スイッチ１８（１８ａ，１８ｂ，１８ｃ，１８ｄ，１８ｅ，１８ｆ，１８ｈ，１８ｇ，１８Ｌおよび１８Ｒ）が配置される。
【００２８】
また、上側ハウジング１６ａと下側ハウジング１６ｂとは、上側ハウジング１６ａの下辺（下端）と下側ハウジング１６ｂの上辺（上端）の一部とが回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、ＬＣＤ１２の表示面とＬＣＤ１４の表示面とが対面するように、上側ハウジング１６ａを回動させて折りたたんでおけば、ＬＣＤ１２の表示面およびＬＣＤ１４の表示面に傷がつくなどの破損を防止することができる。ただし、上側ハウジング１６ａと下側ハウジング１６ｂとは、回動可能に連結せずに、それらを一体的（固定的）に設けたハウジング１６を形成するようにしてもよい。
【００２９】
操作スイッチ１８は、方向指示スイッチ（十字スイッチ）１８ａ，スタートスイッチ１８ｂ，セレクトスイッチ１８ｃ，動作スイッチ（Ａボタン）１８ｄ，動作スイッチ（Ｂボタン）１８ｅ，動作スイッチ（Ｘボタン）１８ｆ，動作スイッチ（Ｙボタン）１８ｇ，電源スイッチ１８ｈ，動作スイッチ（Ｌボタン）１８Ｌおよび動作スイッチ（Ｒボタン）１８Ｒを含む。スイッチ１８ａおよび１８ｈは、下側ハウジング１６ｂの一方主面において、ＬＣＤ１４の左側に配置される。また、スイッチ１８ｂないし１８ｇは、下側ハウジング１６ｂの一方主面において、ＬＣＤ１４の右側に配置される。さらに、スイッチ１８Ｌおよびスイッチ１８Ｒは、それぞれ、下側ハウジング１６ｂの上端（天面）の一部において、上側ハウジング１６ａとの連結部以外に当該連結部を挟むように、左右に配置される。
【００３０】
方向指示スイッチ１８ａは、ディジタルジョイスティックとして機能し、４つの押圧部の１つを操作することによって、プレイヤによって操作可能なプレイヤキャラクタ（またはプレイヤオブジェクト）の移動方向を指示したり、カーソルの移動方向を指示したりする等に用いられる。スタートスイッチ１８ｂは、プッシュボタンで構成され、ゲームを開始（再開）したり、一時停止（Pause）したりする等に用いられる。セレクトスイッチ１８ｃは、プッシュボタンで構成され、ゲームモードの選択等に用いられる。
【００３１】
動作スイッチ１８ｄすなわちＡボタンは、プッシュボタンで構成され、方向指示以外の動作、すなわち、プレイヤキャラクタに打つ（パンチ）、投げる、つかむ（取得）、乗る、ジャンプするなどの任意のアクションをさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム（ＲＰＧ）やシミュレーションＲＰＧにおいては、アイテムの取得、武器またはコマンドの選択および決定等を指示することができる。動作スイッチ１８ｅすなわちＢボタンは、プッシュボタンで構成され、セレクトスイッチ１８ｃで選択したゲームモードの変更やＡボタン１８ｄで決定したアクションの取り消し等のために用いられる。
【００３２】
動作スイッチ１８ｅすなわちＸボタン、および動作スイッチ１８ｆすなわちＹボタンは、プッシュボタンで構成され、プッシュボタンＡとプッシュボタンＢだけでは、ゲーム進行ができないときに、補助的な操作ボタンとして用いられる。もちろん、ゲームプレイにおいてＸボタンとＹボタンを必ずしも使用しなくてよい。電源スイッチ１８ｈは、ゲーム装置１０の電源をオンオフするためのスイッチである。
【００３３】
動作スイッチ１８Ｌ（左押しボタン）および動作スイッチ１８Ｒ（右押しボタン）は、プッシュボタンで構成され、左押しボタン（Ｌボタン）１８Ｌおよび右押しボタン（Ｒボタン）１８Ｒは、Ａボタン１８ｄおよびＢボタン１８ｅと同様の操作に用いることができ、また、Ａボタン１８ｄおよびＢボタン１８ｅの補助的な操作に用いることができる。
【００３４】
また、このゲーム装置１０はタッチパネルを用いたゲーム装置であり、ＬＣＤ１４の上面には、タッチパネル２０が装着される。タッチパネル２０としては、たとえば、抵抗膜方式、光学式（赤外線方式）および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル２０は、その上面をスティック２４ないしはペン（スタイラスペン）或いは指（以下、これらを「スティック２４等」という場合がある。）で、押圧したり撫でたり（触れたり）することにより操作すると、スティック２４等の座標位置を検出して座標データを出力する。
【００３５】
なお、この実施例では、ＬＣＤ１４（ＬＣＤ１２も同じ、または略同じ。）の表示面の解像度は２２８ｄｏｔ×１９２ｄｏｔであり、タッチパネル２０の検出精度も表示画面に対応して２２８ｄｏｔ×１９２ｄｏｔとしてあるが、タッチパネル２０の検出精度は表示画面の解像度よりも低くてもよく、高くてもよい。
【００３６】
この実施例では、たとえばタッチパネル２０の設けられるＬＣＤ１４には、プレイヤに見せかつ操作させるためのゲーム画面が表示され、ＬＣＤ１２にはプレイヤに見せるためのゲーム画面が表示される。具体的には、ＬＣＤ１２には横線と縦線で形成されたアミダくじのような軌道上をオブジェクトが移動してくる画像が表示される。ＬＣＤ１４に表示されるゲーム画面には、未完成のアミダくじのように、縦線のみが表示されており、プレイヤはＬＣＤ１４に表示された縦線に対して、スティック２４等で直接触れるようにしてタッチパネル２０上に横線を描くような操作をする。こうして、ＬＣＤ１２に表示される軌道の続きをＬＣＤ１４に描いて、移動してくるオブジェクトを所定位置に導くための軌道を作るのである。なお、ＬＣＤ１４は、ゲームの種類に応じてその他各種の入力指示を行うようにしてもよく、たとえばＬＣＤ１４の表示画面に文字情報やアイコン等を表示してコマンドを選択させたりすることができる。
【００３７】
このように、ゲーム装置１０は、２画面分の表示部となるＬＣＤ１２およびＬＣＤ１４を有し、いずれか一方（この実施例では、ＬＣＤ１４）の表示画面上にタッチパネル２０が設けられるので、２画面（ＬＣＤ１２，１４）と２系統の操作部（１８，２０）を有する構成となるのである。
【００３８】
また、この実施例では、スティック２４は、たとえば上側ハウジング１６ａの中央より側面寄（右寄）に設けられる収納部（収納穴）（図示せず）に収納することができ、必要に応じて取り出される。ただし、スティック２４を設けない場合には、収納部を設ける必要もない。
【００３９】
さらに、ゲーム装置１０はメモリカード（またはゲームカートリッジ）２６を含み、このメモリカード２６は着脱自在であり、下側ハウジング１６ｂの裏面ないしは上端（側面）に設けられる挿入口（図示せず）から挿入される。図１では省略するが、挿入口の奥部には、メモリカード２６の挿入方向先端部に設けられるコネクタ（図示せず）と接合するためのコネクタ４６（図２参照）が設けられており、したがって、メモリカード２６が挿入口に挿入されると、コネクタ同士が接合され、ゲーム装置１０のＣＰＵコア４２（図２参照）がメモリカード２６にアクセス可能となる。
【００４０】
なお、図１では表現できないが、下側ハウジング１６ｂの内部において、この下側ハウジング１６ｂの音抜き孔２２ａと対応する位置には、右スピーカ３０ａおよび音抜き孔２２ｂと対応する位置には、左スピーカ３０ｂ（図２参照）が設けられる。
【００４１】
また、図１では省略するが、たとえば、下側ハウジング１６ｂの裏面側には、電池収容ボックスが設けられ、また、下側ハウジング１６ｂの底面側には、音量調節つまみ、外部拡張コネクタおよびイヤフォンジャックなどが設けられる。
【００４２】
図２は、ゲーム装置１０の電気的な構成を示すブロック図である。図２を参照して、ゲーム装置１０は電子回路基板４０を含み、この電子回路基板４０にはＣＰＵコア４２等の回路コンポーネントが実装される。ＣＰＵコア４２は、バス４４を介して、コネクタ４６，ＲＡＭ４８，第１のＧＰＵ（Graphic Processing Unit）５２，第２のＧＰＵ５４，Ｉ／Ｆ回路５０，ＬＣＤコントローラ６０およびワイヤレス通信ユニット６４と接続される。
【００４３】
コネクタ４６には、上述したように、メモリカード２６が着脱自在に接続される。メモリカード２６は、ＲＯＭ２６ａおよびＲＡＭ２６ｂを含む。図示は省略するが、ＲＯＭ２６ａおよびＲＡＭ２６ｂは、バスで互いに接続され、かつコネクタ４６と接合されるコネクタ（図示せず）に接続される。この結果、ＣＰＵコア４２は、ＲＯＭ２６ａおよびＲＡＭ２６ｂにアクセスすることができる。
【００４４】
ＲＯＭ２６ａは、ゲーム装置１０で実行すべきゲームのためのゲームプログラム、キャラクタ画像，背景画像，アイテム画像，メッセージ画像のような画像データ、効果音，ＢＧＭ，キャラクタの擬制音のような音データなどを予め記憶する。バックアップＲＡＭ２６ｂは、ゲームの途中データや結果データをセーブする。
【００４５】
ＲＡＭ４８は、バッファメモリないしはワーキングメモリとして使用される。つまり、ＣＰＵコア４２は、メモリカード２６のＲＯＭ２６ａに記憶されたゲームプログラム、および画像データ，音データ等のデータをＲＡＭ４８にロードし、ロードしたゲームプログラムを実行する。また、ＣＰＵコア４２は、ゲーム処理の進行に応じて、ゲームデータやフラグデータなどの一時的なデータをＲＡＭ４８に記憶する。
【００４６】
なお、ゲームプログラム、および画像データ，音データ等のデータは、一括して、または必要に応じて部分的かつ順次的にＲＯＭ２６ａから読み出され、ＲＡＭ４８に記憶される。
【００４７】
ＧＰＵ５２および５４の各々は、描画手段の一部を形成し、たとえばシングルチップＡＳＩＣで構成される。ＧＰＵ５２または５４は、ＣＰＵコア４２からグラフィックスコマンド（作画命令）を受けたとき、このグラフィックスコマンドにしたがってゲーム画像データを生成する。ここで、ＣＰＵコア４２は、グラフィックスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラム（ゲームプログラムに含まれる。）をＧＰＵ５２および５４の各々に与える。
【００４８】
ただし、グラフィックスコマンドの実行に必要なデータ（ポリゴン，テクスチャなどの画像データ）は、ＲＡＭ４８に格納され、ＧＰＵ５２または５４によって取得される。
【００４９】
また、ＧＰＵ５２にはＶＲＡＭ５６が接続され、ＧＰＵ５４にはＶＲＡＭ５８が接続される。ＧＰＵ５２は、作成したゲーム画像データをＶＲＡＭ５６に描画し、ＧＰＵ５４は、作成したゲーム画像データをＶＲＡＭ５８に描画する。
【００５０】
ＶＲＡＭ５６および５８は、ＬＣＤコントローラ６０に接続される。ＬＣＤコントローラ６０はレジスタ６２を含む。レジスタ６２はたとえば１ビットで構成され、ＣＰＵコア４２の指示によって“０”または“１”のデータ値を記憶する。ＬＣＤコントローラ６０は、レジスタ６２のデータ値が“０”であるとき、ＶＲＡＭ５６に描画されたゲーム画像データをＬＣＤ１４に出力し、ＶＲＡＭ５８に描画されたゲーム画像データをＬＣＤ１２に出力する。また、ＬＣＤコントローラ６０は、レジスタ６２のデータ値が“１”であるとき、ＶＲＡＭ５６に描画されたゲーム画像データをＬＣＤ１２に出力し、ＶＲＡＭ５８に描画されたゲーム画像データをＬＣＤ１４に出力する。
【００５１】
Ｉ／Ｆ回路５０には、操作スイッチ１８，タッチパネル２０，右スピーカ３０ａおよび左スピーカ３０ｂが接続される。ここで、操作スイッチ１８は、上述したスイッチ１８ａ，１８ｂ，１８ｃ，１８ｄ，１８ｅ，１８ｆ，１８ｇ，１８ｈ，１８Ｌおよび１８Ｒである。操作スイッチ１８が操作されると、対応する操作信号（操作データ）がＩ／Ｆ回路５０を介してＣＰＵコア４２に入力される。タッチパネル２０で検出された座標データも、Ｉ／Ｆ回路５０を介してＣＰＵコア４２に入力される。また、ＣＰＵコア４２は、ＢＧＭ，効果音，キャラクタの擬制音などのゲームに必要な音データをＲＡＭ４８から読み出し、Ｉ／Ｆ回路５０を介して右スピーカ３０ａおよび左スピーカ３０ｂから出力する。
【００５２】
対戦モードが選択された状態では、相手方のゲーム装置との間で無線信号がワイヤレス通信ユニット６４を通してやり取りされる。すなわち、ワイヤレス通信ユニット６４は、相手方への通信データを無線信号に変調してアンテナ（図示せず）から送信し、また、相手方のゲーム装置からの無線信号を同じアンテナで受信して通信データに復調する。
【００５３】
図３にはＲＡＭ４８のメモリマップの一例が示される。ＲＡＭ４８は、メモリカード２６のＲＯＭ２６ａからロードされたプログラムを記憶するプログラム記憶領域７０を含む。ロードされるプログラムは、問題表示プログラム７２，タッチオンオフ検出プログラム７４，タッチ軌跡一時記憶プログラム７６，認識データ生成プログラム７８，文字認識プログラム８０，回答判定プログラム８２，回答表示プログラム８４，問題ポインタ制御プログラム８６などを含む。
【００５４】
なお、プログラム記憶領域７０には、図示は省略しているが、ゲーム画像やゲーム音声を生成／出力するためのプログラムなど、その他のゲーム進行に必要な各種プログラムが記憶される。
【００５５】
問題表示プログラム７２は、ＬＣＤ１２に問題を表示するためのプログラムである。タッチオンオフ検出プログラム７４は、タッチパネル２０に対するタッチオンおよびタッチオフを検出し、検出結果に応じてタッチオンフラグをオン／オフするためのプログラムである。タッチ軌跡一時記憶プログラム７６は、タッチオンからタッチオフまでのタッチ軌跡（手書き入力データ）を一時記憶するためのプログラムである。
【００５６】
認識データ生成プログラム７８は、文字認識処理の対象となるデータ（認識データ）を生成するためのプログラムである。このプログラムは、複数ストロークが入力されたとき、２種類の認識データを準備する。たとえば２ストロークが入力されたとき、１ストローク目および２ストローク目をまとめたものを第１認識データとして準備し、また、１ストローク目を十位としかつ２ストローク目を一位としたものを第２認識データとして準備する。
【００５７】
文字認識プログラム８０は、認識データ生成プログラム７８によって生成された認識データに基づいて文字認識処理を実行するためのプログラムである。このプログラムは、認識データ生成プログラム７８によって複数種類の認識データが準備された場合、生成された複数種類の認識データの各々に対して文字認識を行う。こうして得られる２種類の認識結果のうち認識得点の高い方を採用することで、より的確な認識結果を得ることができる。
【００５８】
回答判定プログラム８２は、文字認識処理の結果つまり回答が正解か否かを判定するためのプログラムである。回答表示プログラム８４は、ＬＣＤ１２に回答を表示するためのプログラムである。問題ポインタ制御プログラム８６は、ＬＣＤ１２に表示される出題中の問題を示すポインタ（図４のＰ）を表示するプログラムである。
【００５９】
また、ＲＡＭ４８は、データ記憶領域９０を含む。データ記憶領域９０は、タッチオンフラグ記憶領域９２，タッチ軌跡一時記憶領域９４，認識データ一時記憶領域９６，認識結果一時記憶領域９８，問題・回答データ記憶領域１００，正解データ記憶領域１０２および認識辞書データ記憶領域１０４を有する。
【００６０】
タッチオンフラグ記憶領域９２は、タッチオンフラグを記憶するための領域である。タッチオンフラグは、タッチパネル２０へのタッチオンが検出されたときタッチオンオフ検出プログラム７４によってオンされ、同じくタッチオフが検出されるとオフされる。タッチ軌跡一時記憶領域９４は、タッチパネル２０によって検出されたタッチ軌跡を一時記憶するための領域である。タッチ軌跡一時記憶領域９４には、１ストローク目のタッチ軌跡，２ストローク目のタッチ軌跡，…が記憶される。
【００６１】
認識データ一時記憶領域９６は、認識データ生成プログラム７８によって生成された認識データを一時記憶するための領域である。認識結果一時記憶領域９８は、認識データに基づく文字認識処理の結果を一時記憶するための領域である。問題・回答データ記録領域１００は、問題データおよび回答データを記憶するための領域である。問題データは問題１データ，問題２データ，…を含み、このうち表示対象である問題データがポインタＰで示されている。回答データは回答１データ，回答２データ，…を含む。
【００６２】
正解データ記憶領域１０２は、正解データを記憶するための領域である。正解データ記憶領域１０２には、問題１に対応する正解１データ，問題２に対応する正解２データ，…が記憶される。正解１データ，正解２データ，…の各々は、数字（正解の数値）およびストローク数を含む。認識辞書データ記憶領域１０４は、文字認識処理で参照される認識辞書データを記憶するための領域である。この認識辞書データは、１桁の数字つまり“０”ないし“９”の各々の特徴データを含む。
【００６３】
以上のように構成されたゲーム装置１０では、計算ゲームは、次のように進行する。図４を参照して、初期設定が完了すると、最初の問題“３×２＝”に対応する問題データがＲＡＭ４８から読み出され、読み出されたデータに基づく画像“３×２＝”がＬＣＤ１２に表示される。かかる第１問の答え“６”が右側のＬＣＤ１４上のタッチパネル２０にスティック２４で描かれると、その軌跡が検出され、検出されたタッチ軌跡つまり手書きデータがタッチ軌跡一時記憶領域に記憶される。検出されたタッチ軌跡は、ＬＣＤ１４に表示される。また、検出されたタッチ軌跡に対して文字認識処理が行われ、そして認識結果“６”がＬＣＤ１２に表示される。
【００６４】
認識結果は正解と照合され、正解と一致すれば正解マーク“○”が併せて表示される。正解と一致しなければ、所定時間に渡って訂正入力を受け付け、それでも正解と一致しなければ、次の問題に移る。
【００６５】
第１問の処理が完了すると、次の問題“２×９＝”に対応する問題データが読み出され、読み出されたデータに基づく画像“２×９＝”がＬＣＤ１２に表示される。かかる第２問の答え“１８”がＬＣＤ１４上に描かれると、タッチパネル２０によって軌跡が検出され、検出されたタッチ軌跡がＬＣＤ１４に表示され、このタッチ軌跡に対して文字認識処理が行われ、そして認識結果“１８”がＬＣＤ１２に表示される。
【００６６】
以降の問題についても同様の処理が行われ、全ての問題を処理し終えると、計算ゲームは終了される。
【００６７】
認識データ生成処理および文字認識処理は、詳しくは図５−図９のようにして実行される。まず図５を参照して、ＬＣＤ１２に最初の問題“２＋１＝”が表示され、操作者によってタッチパネル２０に“３”が１ストロークで入力されたとする。この問題の正解は“３”であり、ストローク数は“１”であり、桁数は“１”である。１ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ１）、タッチパネル２０によって捉えられたタッチ軌跡Ｄ１が認識データとして認識エンジン（文字認識プログラム８０）に送られる。
【００６８】
認識エンジンは、受け取った認識データＤ１に対して文字認識処理を行い、認識結果Ｒ＝３および認識得点Ｐ＝９を返す。なお、認識得点（適宜“得点”と呼ぶ）は、認識結果と認識辞書内の該当データとの類似度を示す数値であり、ここでは満点を“１０”とする。認識エンジンからは、このような認識結果および得点が、一般に複数組、得点順に返されるが、ここでは最高得点の１組以外は省略する。
【００６９】
認識エンジンからの認識結果“３”は正解“３”と比較され、得点は閾値Ｔｈ１（これを“５”とする）と比較される。認識結果が正解と一致し、かつ得点が閾値を上回るので、ＬＣＤ１２には正解“３”が表示され、次の問題に移る。
【００７０】
図６を参照して、第２問“３＋４＝”が表示され、操作者によって“７”が２ストロークで入力されたとする。正解は“７”であり、ストローク数は“２”である。１ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ１）、タッチ軌跡Ｄ１が認識データとして認識エンジンに送られる。
【００７１】
認識エンジンは、受け取った認識データＤ１に対して文字認識処理を行い、認識結果Ｒ＝１および得点Ｐ＝２を返す。
【００７２】
認識エンジンからの認識結果“１”は正解“７”と比較され、正解と一致しないので、２ストローク目の入力を待つ。２ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ２）、１および２ストローク目を共に含むタッチ軌跡Ｄ２が第１認識データとして認識エンジンに送られ、さらに、１ストローク目だけを含むタッチ軌跡Ｄ３および２ストローク目だけを含むタッチ軌跡Ｄ４をそれぞれ十位および一位とする第２認識データが認識エンジンに送られる。
【００７３】
認識エンジンは、受け取った第１認識データつまりタッチ軌跡Ｄ２に対して文字認識処理を行い、さらに第２認識データつまりタッチ軌跡Ｄ３およびＤ４の各々に対して文字認識処理を行う。そして、第１認識データに対応する認識結果Ｒ＝７および得点Ｐ＝１８（＝９＊２）と、第２認識データに対応する認識結果Ｒ＝［１，７］（＝１７）および得点Ｐ＝１０（＝２＋８）とを返す。なお、第１認識データについては、タッチ軌跡の数が第２認識データの場合の半分しかないので、原得点の２倍が得点として与えられる。
【００７４】
認識エンジンからの認識結果“７”および“１７”の各々は正解“７”と比較され、得点“１８”および“１０”の各々は閾値Ｔｈ２（これを“１２”とする）と比較される。後者の認識結果“１７”が正解と一致し、かつ得点が閾値Ｔｈ２を上回るので、ＬＣＤ１２には正解“７”が表示され、次の問題にポインタが移動する。
【００７５】
図７を参照して、第３問“１０＋１＝”が表示され、操作者によって“１１”が２ストロークで入力されたとする。正解は“１１”であり、ストローク数は“２”である。１ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ１）、タッチ軌跡Ｄ１が認識データとして認識エンジンに送られる。
【００７６】
認識エンジンは、受け取った認識データＤ１に対して文字認識処理を行い、認識結果Ｒ＝１および得点Ｐ＝９を返す。
【００７７】
認識エンジンからの認識結果“１”は正解“１１”と比較され、正解と一致しないので、２ストローク目の入力を待つ。２ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ２）、１ストローク目および２ストローク目を含むタッチ軌跡Ｄ２が第１認識データとして認識エンジンに送られ、かつ１ストローク目を含むタッチ軌跡Ｄ３および２ストローク目を含むタッチ軌跡Ｄ４が第２認識データとして認識エンジンに送られる。
【００７８】
認識エンジンは、受け取った第１認識データつまりタッチ軌跡Ｄ２に対して文字認識処理を行い、さらに第２認識データつまりタッチ軌跡Ｄ３およびＤ４の各々に対して文字認識処理を行う。そして、第１認識データに対応する認識結果Ｒ＝？（不明）および得点Ｐ＝０と、第２認識データに対応する認識結果Ｒ＝［１，１］（＝１１）および得点Ｐ＝１８（＝９＋９）とを返す。
【００７９】
認識エンジンからの２つの認識結果の各々は正解“１１”と比較され、２つの得点の各々は閾値Ｔｈ２と比較される。一方の認識結果“１１”が正解と一致し、かつ得点が閾値を上回るので、ＬＣＤ１２には正解“１１”が表示され、次の問題にポインタが移動する。
【００８０】
このように、２つの認識結果の少なくとも１つが正解であり、かつこれに対応する得点が閾値Ｔｈ２を超えていれば、ＬＣＤ１２に正解が表示され、次の問題に進むことになる。
【００８１】
図８を参照して、第３問“７０＋１＝”が表示され、操作者によって“７１”が３ストロークで入力されたとする。正解は“７１”であり、ストローク数は“３”であり、桁数は“２”である。１ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ１）、タッチ軌跡Ｄ１が認識データとして認識エンジンに送られる。
【００８２】
認識エンジンは、受け取った認識データＤ１に対して文字認識処理を行い、認識結果Ｒ＝１および得点Ｐ＝２を返す。
【００８３】
認識エンジンからの認識結果“１”は正解“７１”と比較され、正解と一致しないので、２ストローク目の入力を待つ。２ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ２）、１ストローク目および２ストローク目を含むタッチ軌跡Ｄ２が第１認識データとして認識エンジンに送られ、かつ１ストローク目を含むタッチ軌跡Ｄ３および２ストローク目を含むタッチ軌跡Ｄ４が第２認識データとして認識エンジンに送られる。
【００８４】
認識エンジンは、受け取った第１認識データおよび第２認識データの各々に対して文字認識処理を行い、第１認識データに対応する認識結果Ｒ＝７および得点Ｐ＝１６（＝８＊２）と、第２認識データに対応する認識結果Ｒ＝［１，７］（＝１７）および得点Ｐ＝５（＝２＋５）とを返す。
【００８５】
認識エンジンからの２つの認識結果の各々は正解“７１”と比較され、いずれも正解と一致しないので、３ストローク目の入力を待つ。３ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ３）、１ストローク目および２ストローク目を含むタッチ軌跡Ｄ５および３ストローク目を含むタッチ軌跡Ｄ６が第１認識データとして認識エンジンに送られ、かつ１ストローク目を含むタッチ軌跡Ｄ７および２ストローク目および３ストローク目を含むタッチ軌跡Ｄ６が第２認識データとして認識エンジンに送られる。
【００８６】
認識エンジンは、受け取った第１認識データおよび第２認識データの各々に対して文字認識処理を行い、第１認識データに対応する認識結果Ｒ＝［７，１］（＝７１）および得点Ｐ＝１６（＝８＋８）と、第２認識データに対応する認識結果Ｒ＝［１，？］（＝？）および得点Ｐ＝２（＝２＋０）とを返す。
【００８７】
認識エンジンからの２つの認識結果の各々は正解“７１”と比較され、この結果、一方の認識結果“７１”が正解と一致する。さらに、正解と一致した認識結果つまり［７，１］に対応する得点“１６”が閾値Ｔｈ２つまり“１０”を上回るため、ＬＣＤ１２には正解“７１”が表示され、次の問題にポインタが移動する。
【００８８】
ところで、操作者は、必ずしも所定のストローク数に従って手書き入力を行うとは限らない。図９には、第３問に対して操作者が“７１”を２ストロークで入力した場合の認識処理が示されている。図９を参照して、１ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ１）、タッチ軌跡Ｄ１が認識データとして認識エンジンに送られる。認識エンジンは、受け取った認識データＤ１に対して文字認識処理を行い、認識結果Ｒ＝７および得点Ｐ＝８を返す。
【００８９】
認識エンジンからの認識結果“７”は正解“７１”と比較され、正解と一致しないので、２ストローク目の入力を待つ。２ストローク目のタッチオフが検出されたとき（時刻ｔ＝ｔ２）、１ストローク目および２ストローク目を含むタッチ軌跡Ｄ４が第１認識データとして認識エンジンに送られ、かつ１ストローク目を含むタッチ軌跡Ｄ２および２ストローク目を含むタッチ軌跡Ｄ３が第２認識データとして認識エンジンに送られる。
【００９０】
認識エンジンは、受け取った第１認識データおよび第２認識データの各々に対して文字認識処理を行い、第１認識データに対応する認識結果Ｒ＝？および得点Ｐ＝０と、第２認識データに対応する認識結果Ｒ＝［７，１］および得点Ｐ＝１７（＝８＋９）とを返す。
【００９１】
認識エンジンからの２つの認識結果の一方が正解と一致し、その得点も閾値“１０”を上回る。このため、ＬＣＤ１２に正解“７１”が表示され、次の問題にポインタが移動する。つまり、正解が３ストロークであっても、２ストローク目で正解と判定されれば、より速いタイミングで次の問題に進むことができる。
【００９２】
このゲーム装置１０で計算ゲームをプレイするときのＣＰＵコア４２の処理動作を図１０−図１６を用いて説明する。まず、図１０を参照して、ステップＳ１では、ポインタＰで示された問題データを問題・回答データ記憶領域１００から読み出し、読み出されたデータに基づく問題をＬＣＤ１２に表示する。ステップＳ３では、タッチパネル２０へのタッチオンがあったか否かを判別し、ＮＯであれば待機する。なお、タッチオンの有無は、タッチオンオフフラグに基づいて判別される（後述のタッチオフも同様）。
【００９３】
ステップＳ３でＹＥＳであれば、ステップＳ５で、タッチパネル２０によって検出されたタッチ座標をタッチ軌跡一時記憶領域９４に記憶し、そしてステップＳ７で、タッチパネル２０からのタッチオフがあったか否かを判別する。ここでＮＯであれば、ステップＳ５に戻る。ステップＳ３の判別結果がＹＥＳとなると、ステップＳ９に移って、タッチオンからタッチオフまでに一時記憶されたタッチ座標つまり１ストローク目に対応するタッチ軌跡（これを単に“１ストローク目”と称する；以下同様）を認識エンジンに送る。すなわち、文字認識プログラム８０に従い、１ストローク目に対して認識処理（図１５参照）を実行する。認識処理が完了すると、ステップＳ１３で認識エンジンから認識結果（Ｒ）および得点（Ｐ）を受け取り、ステップＳ１７に進む。
【００９４】
図１１を参照して、ステップＳ１７では、ステップＳ１の表示問題に対応する正解データを正解データ記憶領域１０２から読み出し、読み出されたデータが認識結果に含まれるか否かを判別する。ここでＹＥＳであれば、ステップＳ１９で、得点が閾値Ｔｈ１（たとえば“５”）より大きいか否かをさらに判別する。ここでＹＥＳであれば、ステップＳ２１で、正解に対応する回答データを問題・回答データ記憶領域１００から読み出し、読み出されたデータに基づいて正解をＬＣＤ１２に表示する。そして、ステップＳ３１（後述）に進む。
【００９５】
ステップＳ１９でＮＯと判別されれば、ステップＳ２３に移って、正解のストローク数が“２”以上か否かを判別する。ここでＹＥＳであれば、ステップＳ３９およびＳ４１のループ（後述）に進む。
【００９６】
ステップＳ２３でＮＯであれば、ステップＳ２５ないしＳ３１のループに入る。ステップＳ２５では書き直し入力の有無を判別し、ステップＳ２７では、入力されたストローク数が正解のストローク数を下回るか否かを判別する。ここでＹＥＳであればステップＳ２９に移り、ＮＯであればステップＳ３１に移る。ステップＳ２９では、認識結果取得から所定時間Ｔ１が経過したか否かを判別する。ステップＳ３１では、認識結果取得から所定時間Ｔ２（＜Ｔ１）が経過したか否かを判別する。
【００９７】
書き直し入力があればステップＳ１５（図１０参照）に抜けて、タッチ軌跡一時記憶領域９４に一時記憶されたタッチ座標をクリアし、そしてステップＳ３に戻る。書き直し入力がないままに所定時間Ｔ１またはＴ２が経過すれば、ステップＳ３３に抜ける。図１２を参照して、ステップＳ３３では、ステップＳ１３で取得された認識結果のうち得点が最高のものつまり誤答を、間違い指摘メッセージたとえばバツ印と一緒に、ＬＣＤ１２の解答欄に表示する。そして、ステップＳ３５に進む。
【００９８】
ステップＳ３５では、次の問題が残っているか否かを判別し、ここでＮＯであれば、この計算ゲームを終了する。ＹＥＳであれば、ステップＳ３７でポインタＰをインクリメントし、そしてステップＳ１に戻る。
【００９９】
図１３を参照して、ステップＳ３９ではタッチオンの有無を判別し、ステップＳ４１では、認識結果取得（Ｓ１３）から所定時間が経過したか否かを判別する。タッチオンが検出されると、ステップＳ３９からステップＳ４３に移る。所定時間が経過してもタッチオンが検出されなければ、ステップＳ４１でＹＥＳと判別され、ステップＳ３３に戻る。
【０１００】
ステップＳ４３では、検出されたタッチ座標をタッチ軌跡一時記憶領域９４に記憶し、そして、ステップＳ４５でタッチオフの有無を判別する。ここでＮＯであれば、ステップＳ４３に戻る。ステップＳ４５の判別結果がＹＥＳとなると、ステップＳ４７に移って認識データ準備処理（図１５参照）を実行し、そしてステップＳ４９で認識処理（図１６参照）を実行する。
【０１０１】
認識データ準備処理では、現時点でタッチ軌跡一時記憶領域９４に記憶されている１ストローク目および２ストローク目に基づいて２種類の認識データすなわち第１認識データおよび第２認識データが準備される。認識エンジンによる文字認識処理は、かかる第１認識データおよび第２認識データの各々に対して実行される（詳細は後述）。
【０１０２】
ステップＳ５１では、認識エンジンから認識結果および得点を受け取る。図１４を参照して、ステップＳ５３では、正解データが認識結果に含まれるか否かを判別する。ここでＹＥＳであれば、ステップＳ５５に移って、正解に対応する得点の少なくとも１つが閾値Ｔｈ２（たとえば“１０”）より大きいか否かをさらに判別する。ここでもＹＥＳであれば、ステップＳ２１に移って正解を表示し、そしてステップＳ３５に進む。
【０１０３】
ステップＳ５３またはステップＳ５５でＮＯと判別されれば、ステップＳ５７ないしＳ６５のループに入る。ステップＳ５７では書き直し入力の有無を判別し、ステップＳ５９ではタッチオンの有無を判別し、ステップＳ６１では、入力されたストローク数が正解のストローク数を下回るか否かを判別する。ステップＳ６１でＹＥＳであればステップＳ６３に移り、ＮＯであればステップＳ６５に移る。ステップＳ６３では、認識結果取得から所定時間Ｔ１が経過したか否かを判別する。ステップＳ６５では、認識結果取得から所定時間Ｔ２（＜Ｔ１）が経過したか否かを判別する。
【０１０４】
書き直し入力があればステップＳ１５（図１０参照）に移り、タッチオンがあればステップＳ４３およびＳ４５のループ（図１３参照）に戻る。書き直し入力もタッチオンもないままに所定時間Ｔ１またはＴ２が経過すれば、ステップＳ３３（図１２参照）に移る。
【０１０５】
上記の認識データ準備処理（Ｓ４７）は、詳しくは図１５のフロー図に従って実行される。図１５を参照して、ステップＳ７１では、タッチ軌跡記憶領域９４に３ストローク目が記憶されているか否かをさらに判別する。ここでＮＯであればステップＳ７３に移り、ＹＥＳであればステップＳ７５に移る。
【０１０６】
ステップＳ７３では、１ストローク目および２ストローク目をまとめたもの（たとえば図７のデータＤ２）を第２認識データとし、また、１ストローク目を十位としかつ２ストローク目を一位としたもの（同じくデータＤ３およびＤ４）を第２認識データとする。
【０１０７】
ステップＳ７５では、最終ストロークを一位としかつこれより前の全ストロークを十位としたもの（たとえば図８のデータＤ５およびＤ６）を第１認識データとし、また、最終およびその直前のストロークの計２ストロークを一位としかつこれより前の全ストロークを十位としたもの（同じくデータＤ７およびＤ８）を第２認識データとする。
【０１０８】
ステップＳ７３またはＳ７５で２種類の認識データを準備し終えると、上位層のルーチンに復帰する。
【０１０９】
上記の認識処理（Ｓ１１，Ｓ４９）は、詳しくは図１６のフロー図に従って実行される。図１６を参照して、ステップＳ９１では、正解のストローク数が“１”であるか否かを判別する。ここでＹＥＳであれば、ステップＳ９３に移って、ステップＳ９によって送られた認識データ（たとえば図５のＤ１，図６のＤ１）に対して文字認識処理を行い、認識結果および得点を返す。
【０１１０】
ステップＳ９１でＮＯであれば、ステップＳ９５に移って、変数ｎに“１”をセットする。続くステップＳ９７では、第ｎ認識データが十位を含むか否かを判別する。ここでＮＯであればステップＳ９９に移り、ＹＥＳであればステップＳ１０１に移る。
【０１１１】
ステップＳ９９では、第ｎ認識データに対して文字認識処理を行い、認識結果および得点（ただし原得点の２倍）を返す。
【０１１２】
ステップＳ１０１では、第ｎ認識データの十位部分および一位部分の各々に対して文字認識処理を行う。これにより、十位部分の認識結果Ａおよび得点ａと、一位部分の認識結果Ｂおよび得点ｂとが得られる。そして、認識結果［Ａ，Ｂ］および得点“ａ＋ｂ”を返す。
【０１１３】
ステップＳ９９またはＳ１０１で第ｎ認識データに対する認識処理を実行し終えると、ステップＳ１０３に移って、変数ｎが最大値ここでは“２”か否かを判別する。ここでＮＯであれば、ステップＳ１０５で変数ｎをインクリメントし、そしてステップＳ９７に戻る。ステップＳ１０３の判別結果がＹＥＳであれば、上位層のルーチンに復帰する。
【０１１４】
以上からわかるように、この実施例のゲーム装置１０のＣＰＵコア４２は、ポインタＰで示された問題データに基づく画像をＬＣＤ１２に表示し（Ｓ１）、表示画像に向けられる手書き数字入力操作をタッチパネル２０を通してストローク単位で受け付ける（Ｓ３，Ｓ５，Ｓ７；Ｓ３９，Ｓ４３，Ｓ４５；Ｓ５９，Ｓ４３，Ｓ４５）。このような受け付けの度に数字認識処理を行い（Ｓ９，Ｓ１１；Ｓ４７，Ｓ４９）、処理結果が正解と一致するか否かを判別し（Ｓ１７，Ｓ１９；Ｓ５３，Ｓ５５）、そして判別結果が否定的であるとき、受け付けられた手書き数字入力操作のストローク数が正解のストローク数を下回るか否かをさらに判別し（Ｓ２７，Ｓ６１）、この判別結果が肯定的であるとき手書き数字入力操作に対する訂正入力操作を所定時間Ｔ１に渡って受け付け（Ｓ２９，Ｓ６３）、同じく否定的であるときには所定時間Ｔ２（ただしＴ２＜Ｔ１）に渡って受け付ける（Ｓ３１，Ｓ６５）。
【０１１５】
この実施例によれば、表示問題に向けられる手書き数字入力操作をストローク単位で受け付け、受け付けの度に数字認識処理を行い、数字認識処理の結果が正解と一致するか否かを判別するので、入力が正解である場合は正解をいち早く知ることができる。また、かかる判別結果が否定的であるとき、受け付けられた手書き数字入力操作に対する訂正入力操作を受け付けるので、入力が不正解である場合は入力を訂正する機会が与えられる。訂正入力操作の受け付けは所定時間に限られるので、快適性が大きく損なわれることもない。このため、快適に学習が行え、しかも高い学習効果が得られる。
【０１１６】
また、数字認識処理の結果が正解と一致するか否かの判別結果が否定的である状態において、入力されたストローク数がまだ正解のストローク数に到達していない場合には、操作者が不正解を認識していない可能性があるが、このような場合、訂正入力操作の受け付け時間が延長されるので、高い学習効果を維持できる。
【０１１７】
以上では、一例としてゲーム装置１０に適用した場合を説明したが、この発明は、ディスプレイとタッチパネルとを有するようなあらゆるコンピュータ装置（パーソナルコンピュータ，ＰＤＡ，ディジタルテレビなど）に適用できる。
【符号の説明】
【０１１８】
１０  …ゲーム装置
１２，１４  …ＬＣＤ
１８ａ−１８ｈ，１８Ｌおよび１８Ｒ  …操作スイッチ
２０  …タッチパネル
２４  …スティック
２６  …メモリカード
４２  …ＣＰＵコア
４８  …ＲＡＭ
５０  …Ｉ／Ｆ回路
５２，５４  …ＧＰＵ
５６，５８  …ＶＲＡＭ
６０  …ＬＣＤコントローラ
【図１】
0004447046.tif 000002
【図２】
0004447046.tif 000003
【図３】
0004447046.tif 000004
【図４】
0004447046.tif 000005
【図５】
0004447046.tif 000006
【図６】
0004447046.tif 000007
【図７】
0004447046.tif 000008
【図８】
0004447046.tif 000009
【図９】
0004447046.tif 000010
【図１０】
0004447046.tif 000011
【図１１】
0004447046.tif 000012
【図１２】
0004447046.tif 000013
【図１３】
0004447046.tif 000014
【図１４】
0004447046.tif 000015
【図１５】
0004447046.tif 000016
【図１６】
0004447046.tif 000017