(57)【特許請求の範囲】
【請求項１】
計算問題を作成するために必要な数式を作成し、作成した計算問題を表示装置に表示する表示制御手段を含む電子機器であって、
第１の乱数、第２の乱数、および第３の乱数を発生させる乱数発生手段と、
乱数に演算子を対応させる第１の表を予め記憶し、当該第１の表において、前記第１の乱数に対応する演算子を設定する演算子設定手段と、
乱数に演算数を対応させる第２の表を予め記憶し、当該第２の表において、前記第２の乱数に対応する演算数と、前記第３の乱数に対応する被演算数を設定する演算数設定手段とを含み、
前記表示制御手段は、前記演算子設定手段によって設定された演算子、ならびに、前記演算数設定手段によって設定された演算数および被演算数を含む数式を前記表示装置に表示させ、
前記演算数設定手段は、演算数および被演算数を設定する場合に、当該演算数および被演算数が０に設定される確率を他の値に設定される確率よりも低下させる制御を実行することを特徴とする、電子機器。
【請求項２】
前記演算数設定手段は、前記演算子設定手段によって設定された演算子が減号であった場合、前記被演算数を、前記被演算数と前記演算数の和で更新して設定する、請求項１に記載の電子機器。
【請求項３】
前記演算数設定手段は、前記演算子設定手段によって設定された演算子が除号であった場合、前記被演算数を、前記被演算数と前記演算数の積で更新して設定する、請求項１または請求項２に記載の電子機器。
【請求項４】
前記演算子設定手段が過去に設定した１種類または複数種類の演算子を記憶する演算子記憶手段をさらに含み、
前記演算子設定手段は、前記演算子記憶手段に記憶された演算子と異なる演算子を設定することを特徴とする、請求項１〜請求項３のいずれかに記載の電子機器。
【請求項５】
前記演算子記憶手段は、前記演算子設定手段が以前に設定した１つまたは複数の演算子を記憶し、
前記演算子設定手段は、設定された前記演算子が前記演算子記憶手段に記憶された１つまたは複数の演算子と同じ場合には、再度、演算子を設定することを特徴とする、請求項４に記載の電子機器。
【請求項６】
前記演算子記憶手段は、前記演算子設定手段が以前に設定した１つまたは複数の演算子を記憶し、
前記演算子設定手段は、
前記乱数発生手段により得られた乱数を補正する乱数補正手段をさらに含み、
乱数を使用して設定した演算子が前記演算子記憶手段に記憶された１つまたは複数の演算子と同じ場合には、前記乱数補正手段により補正された乱数を使用して演算子を設定することを特徴とする、請求項４に記載の電子機器。
【請求項７】
前記表示制御手段によって表示された数式を複数記憶する数式記憶手段をさらに含み、
前記演算数設定手段は、前記表示制御手段が表示しようとする式が前記数式記憶手段に記憶された式と同じである場合には、再度、演算数および被演算数を設定することを特徴とする、請求項１〜請求項３のいずれかに記載の電子機器。
【請求項８】
前記表示制御手段によって表示された数式を複数記憶する数式記憶手段をさらに含み、
前記表示制御手段が表示しようとする式が前記数式記憶手段に記憶された式と同じである場合に、前記演算数設定手段が設定した演算数および被演算数を補正する数値補正手段をさらに含むことを特徴とする、請求項１〜請求項３のいずれかに記載の電子機器。
【請求項９】
計算問題を作成するために必要な数式を作成し、作成した計算問題を表示装置に表示するための制御プログラムであって、
コンピュータに、
第１の乱数を発生させるステップと、
乱数に演算子を対応させる第１の表を予め記憶するステップし、当該第１の表において、前記第１の乱数に対応する演算子を設定するステップと、
第２の乱数を発生させるステップと、
乱数に演算数および被演算数を対応させる第２の表を予め記憶し、当該第２の表において、前記第２の乱数に対応する演算数および被演算数を設定するステップと、
前記設定された演算数、被演算数、および、演算子を含む数式を前記表示装置に表示させるステップとを実行させ、
前記演算数を設定するステップおよび前記被演算数を設定するステップは、当該演算数および被演算数が０に設定される確率を他の値に設定される確率よりも低下させることを特徴とする制御プログラム。
【請求項１０】
計算問題を作成するために必要な数式を作成し、作成した計算問題を表示装置に表示するための制御プログラムを記録したコンピュータ読取り可能な記録媒体であって、
請求項９に記載した制御プログラムを記録されていることを特徴とする、コンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器に関し、特に、コンピュータを利用してユーザに対して四則計算の問題文を提示する電子機器、制御プログラム、および、コンピュータ読取り可能な記録媒体に関する。
【背景技術】
【０００２】
従来から、コンピュータを利用して、ユーザに対して問題文を提示する機器について種々の技術が開示されている。
【０００３】
たとえば、特許文献１には、四則演算の計算式に利用する数値を乱数に基づいて決定する暗算練習システムが開示されている。
【０００４】
また、特許文献２には、設問レジスタの内容に応じて乱数を発生させ、そして、発生した乱数に対応する数列や初期値等を利用して問題を発生させる技術が開示されている。
【０００５】
また、特許文献３には、ネットワーク型教育管理システムにおいて、問題作成装置が乱数を利用して問題を作成し、当該問題を複数の子機に送信し、そして、全子機において共有化するための技術が開示されている。
【０００６】
また、特許文献４には、ネットワークを利用した教育システムにおいて、予め記憶された問題テンプレートの中の未確定部分を乱数に基づいて確定させて出題する問題を完成させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平５−９４１２８号公報
【特許文献２】特開平９−１６０７２号公報
【特許文献３】特開２００１−１００６２６号公報
【特許文献４】特開２００３−１７３１３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記したように、従来から、問題を表示する装置において、問題の作成に乱数を利用することによって多様な問題を表示するための技術が提案されている。
【０００９】
このように、電子機器等において問題を表示する場合、表示される問題を多様なものとすることは常に望まれていることである。
【００１０】
なお、電子機器においてより多くの問題を記憶するようにすれば、表示される問題を多様なものとすることができると考えられる。
【００１１】
しかしながら、このような方法によれば、電子機器において、多くの問題を記憶するための大量のまたは大容量の記憶装置を必要とされ、電子機器の小型化および低コスト化の妨げとなると考えられる。
【００１２】
本発明は、かかる実情に鑑み考え出されたものであり、その目的は、電子機器等において問題を表示する場合に、必要とされる記憶容量を抑えつつ表示する問題の多様性を向上させることである。
【課題を解決するための手段】
【００１３】
本発明に従った電子機器は、計算問題を作成するために必要な数式を作成し、作成した計算問題を表示装置に表示する表示制御手段を含む電子機器であって、第１の乱数、第２の乱数、および第３の乱数を発生させる乱数発生手段と、乱数に演算子を対応させる第１の表を予め記憶し、当該第１の表において、第１の乱数に対応する演算子を設定する演算子設定手段と、乱数に演算数を対応させる第２の表を予め記憶し、当該第２の表において、第２の乱数に対応する演算数と、第３の乱数に対応する被演算数を設定する演算数設定手段とを含み、表示制御手段は、演算子設定手段によって設定された演算子、ならびに、演算数設定手段によって設定された演算数および被演算数を含む数式を表示装置に表示させ、演算数設定手段は、演算数および被演算数を設定する場合に、当該演算数および被演算数が０に設定される確率を他の値に設定される確率よりも低下させる制御を実行する。
【００１４】
本発明の電子機器では、演算数設定手段は、演算子設定手段によって設定された演算子が減号であった場合、被演算数を、被演算数と演算数の和で更新して設定することが好ましい。
【００１５】
本発明の電子機器では、演算数設定手段は、演算子設定手段によって設定された演算子が除号であった場合、被演算数を、被演算数と演算数の積で更新して設定することが好ましい。
【００１６】
本発明の電子機器は、演算子設定手段が過去に設定した１種類または複数種類の演算子を記憶する演算子記憶手段をさらに含み、演算子設定手段は、演算子記憶手段に記憶された演算子と異なる演算子を設定することが好ましい。
【００１７】
本発明の電子機器では、演算子記憶手段は、演算子設定手段が以前に設定した１つまたは複数の演算子を記憶し、演算子設定手段は、設定された演算子が演算子記憶手段に記憶された１つまたは複数の演算子と同じ場合には、再度、演算子を設定することが好ましい。
【００１８】
本発明の電子機器では、演算子記憶手段は、演算子設定手段が以前に設定した１つまたは複数の演算子を記憶し、演算子設定手段は、乱数発生手段により得られた乱数を補正する乱数補正手段をさらに含み、乱数を使用して設定した演算子が演算子記憶手段に記憶された１つまたは複数の演算子と同じ場合には、乱数補正手段により補正された乱数を使用して演算子を設定することが好ましい。
【００１９】
本発明の電子機器は、表示制御手段によって表示された数式を複数記憶する数式記憶手段をさらに含み、演算数設定手段は、表示制御手段が表示しようとする式が数式記憶手段に記憶された式と同じである場合には、再度、演算数および被演算数を設定することが好ましい。
【００２０】
本発明の電子機器は、表示制御手段によって表示された数式を複数記憶する数式記憶手段をさらに含み、表示制御手段が表示しようとする式が数式記憶手段に記憶された式と同じである場合に、演算数設定手段が設定した演算数および被演算数を補正する数値補正手段をさらに含むことが好ましい。
【００２１】
本発明に従った制御プログラムは、計算問題を作成するために必要な数式を作成し、作成した計算問題を表示装置に表示するための制御プログラムであって、コンピュータに、乱数を発生させるステップと、得られた乱数を使用して、演算数および被演算数を設定するステップと、得られた乱数を使用して、加減乗除のいずれか１つの演算子を設定するステップと、設定された演算数、被演算数、および、演算子を含む数式を表示装置に表示させるステップとを実行させ、演算数および被演算数を設定するステップは、当該演算数および被演算数が０に設定される確率を他の値に設定される確率よりも低下させる。
【００２２】
本発明に従った記録媒体は、計算問題を作成するために必要な数式を作成し、作成した計算問題を表示装置に表示するための制御プログラムを記録したコンピュータ読取り可能な記録媒体であって、上記した制御プログラムを記録されている。
【発明の効果】
【００２３】
本発明によれば、表示装置に表示される数式において、演算数や被演算数だけでなく、演算子についても、乱数を使用して設定される。
【００２４】
これにより、使用する演算子の順序等をデータベース等に記憶させることなく、ランダムに演算子を使用して表示用の数式を作成できる。
【００２５】
したがって、電子機器等において問題を表示する場合に、必要とされる記憶容量を抑えつつ表示する問題の多様性を向上させることができる。
【００２６】
また、本発明によれば、演算数および被演算数が設定される際、当該演算数および被演算数が０に設定される確率は、他の値に設定される確率よりも低くなる。
【００２７】
これにより、表示装置に数式が表示されることによって出題される計算問題において、被演算数または演算数が「０」とされることによって当該計算問題が容易なものとなってしまうことを抑制できる。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施の形態である電卓の外観を示す図である。
【図２】図１の電卓において、計算問題を表示した状態にある液晶表示装置を示す図である。
【図３】図１の電卓の制御ブロック図である。
【図４】図１の電卓のＣＰＵが実行する計算ドリル処理のフローチャートである。
【図５】図１の液晶表示装置における、図４に示した処理の内容に基づいた表示態様を示す図である。
【図６】図４の計算ドリル処理の中の計算問題における演算子を決定する処理のサブルーチンのフローチャートである。
【図７】図６の処理において利用される第１演算子決定表の一例を示す図である。
【図８】図６の演算子決定処理の、変形例のフローチャートである。
【図９】図８の処理において利用される第２演算子決定表の一例を示す図である。
【図１０】図６の演算子決定処理の、さらなる変形例のフローチャートである。
【図１１】図４の計算ドリル処理の中の計算問題における被演算数および演算数を決定する処理のサブルーチンのフローチャートである。
【図１２】図４の計算ドリル処理の中の計算問題における被演算数および演算数を決定する処理のサブルーチンのフローチャートである。
【図１３】図１１の処理において利用される乱数・演算数の変換表の一例を示す図である。
【図１４】図１の電卓の変形例の制御ブロック図である。
【発明を実施するための形態】
【００２９】
図１は、本発明の電子機器の一実施の形態である電卓１の外観を示す図である。
図１を参照して、電卓１は、液晶表示装置２、ＯＮキー３、決定キー４、および、テンキー５を備えている。テンキー５は、０〜９の各数値を入力するために利用されるキーである。
【００３０】
電卓１は、一般の電卓と同様に計算機能を有するとともに、液晶表示装置２に計算問題を表示でき、ユーザから当該計算問題の解答の入力を受付け、そして、当該解答に対して正解であるか否かの表示を行なうことができる。
【００３１】
図２に、計算問題を表示した状態にある液晶表示装置２を示す。
図２を参照して、液晶表示装置２には、表示されている計算問題が何番目であるかを示す出題数表示部２１、被演算数表示部２２、演算子表示部２３、演算数表示部２４、および、解答表示部２５を含む。なお、演算数表示部２４と解答表示部２５の間には、等号が表示されている。
【００３２】
なお、本明細書では、演算子を含む数式において、演算子の前に位置する数値を被演算数、演算子の後に位置する数値を演算数と呼ぶ。また、本明細書では、四則計算に利用する加減乗除の演算子のそれぞれについて、加算に利用される演算子（＋）を加号、減算に利用される演算子（−）を減号、乗算に利用される演算子（×）を乗号、除算に利用される演算子（÷）を除号と呼ぶ。
【００３３】
図３は、本実施の形態の電卓１の制御ブロック図である。
図３を参照して、電卓１では、当該電卓１の動作を全体的に制御するＣＰＵ（Central Processing Unit）１０と、入力装置１２、種々の情報を記憶するメモリ１００、および、上記した液晶表示装置２に表示させる内容を保持するＶＲＡＭ（Video Random Access Memory）１１を含む。入力装置１２は、ＯＮキー３、決定キー４、および、テンキー５等の、ユーザからの情報の入力を受付ける複数のキーから構成される。ＣＰＵ１０は、メモリ１００に記憶された情報等に基づいて、液晶表示装置２に情報を表示させる。また、ＣＰＵ１０は、入力装置１２において入力された情報に基づいて演算を行ない、液晶表示装置２に表示させる情報を決定する。
【００３４】
本実施の形態では、電卓１は、液晶表示装置２に表示させる計算問題に含まれる演算数、被演算数、および、被演算数を、乱数に基づいて設定する。電卓１では、ＣＰＵ１０が、ここで利用される乱数を発生させる。
【００３５】
メモリ１００は、ＣＰＵ１０の発生させた乱数値（以下、適宜「ＲＮＤ」と記す）を一時的に格納する乱数値記憶部１０１、計算問題を作成する際に設定された被演算数（以下、適宜「ＣＡＬ１」と記す）を一時的に格納する被演算数記憶部１０２、出題数表示部２１に表示させる出題数（以下、適宜「ＰＲＢ」と記す）のカウント値を格納する出題数記憶部１０３、計算問題を作成する際に設定された演算数（以下、適宜「ＣＡＬ２」と記す）を一時的に格納する演算数記憶部１０４、出題数記憶部１０３に格納されたカウント値がリセットされるまでの正解数（以下、適宜「ＯＫ」と記す）を格納する正解数記憶部１０５、計算問題を作成する際に設定された演算子に対応する情報（以下、適宜「ＯＰＥ」と記す）を一時的に格納する演算子記憶部１０６、その時点で設定されている演算数および被演算数を特定する情報（以下、適宜「ＴＭＰ」と記す）を記憶する仮バッファ１０７、ユーザからテンキー５を用いて入力された値（以下、適宜「ＩＮ」と記す）を一時的に格納する入力値記憶部１０８、加減乗除の各演算子に関するフラグ（ＴＦ，ＨＦ，ＫＦ，ＤＦ）を記憶する演算子フラグ記憶部１０９、および、前回作成した計算問題における演算子を特定する情報（ＰＯＰＥ［０］）および前々回作成した計算問題における演算子を特定する情報（ＰＯＰＥ［１］）を格納する出題演算子記憶部１１０を含む。
【００３６】
本実施の形態では、ＯＰＥはたとえば「１」〜「４」の値をとり、「１」の値が加号に対応し、「２」の値が減号に対応し、「３」の値が乗号に対応し、「４」の値が除号に対応する。
【００３７】
また、メモリ１００は、演算子ごとに、過去５回出題した計算問題に利用した被演算数および演算数を記憶する、足し算問題記憶部１１１、引き算問題記憶部１１２、掛算問題記憶部１１３、および、割算問題記憶部１１４を含む。
【００３８】
具体的には、加号については、新しいものから順にＰＴ［０］、ＰＴ［１］、ＰＴ［２］、ＰＴ［３］、ＰＴ［４］として足し算問題記憶部１１１に記憶されている。たとえば、前回の加号を演算子として出題された（液晶表示装置２に表示された）練習問題が、「７＋９＝」というものであった場合、ＰＴ［０］としては、被演算数の「７」と演算数の「９」とを利用した２桁の数字である、「７９」という値が記憶される。なお、ＰＴ［０］〜ＰＴ［４］等の値は、被演算数と演算数とが区別される態様で記憶されていれば、必ずしも２桁の数値とされる必要はない。
【００３９】
また、減号については、新しいものから順にＰＨ［０］、ＰＨ［１］、ＰＨ［２］、ＰＨ［３］、ＰＨ［４］として引き算問題記憶部１１２に記憶されている。また、乗号については、新しいものから順にＰＫ［０］、ＰＫ［１］、ＰＫ［２］、ＰＫ［３］、ＰＫ［４］として掛算問題記憶部１１３に記憶されている。また、除号については、新しいものから順にＰＷ［０］、ＰＷ［１］、ＰＷ［２］、ＰＷ［３］、ＰＷ［４］として割算問題記憶部１１４に記憶されている。
【００４０】
ここで、足し算問題記憶部１１１、引き算問題記憶部１１２、掛算問題記憶部１１３、および、割算問題記憶部１１４には、それぞれ過去５回出題した計算問題の被演算数および演算数が記憶されているが、過去５回に限ったものではなく、５つ以上もしくは５つ未満の計算問題を記憶しても構わない。
【００４１】
次に、電卓１の、計算問題を表示する際の動作について、図４を参照して説明する。図４は、電卓１においてＯＮキー３が入力された際にＣＰＵ１０が実行する計算ドリル処理のフローチャートである。なお、当該計算ドリル処理では、１回の処理で最大１００問の計算問題が表示される。
【００４２】
図４を参照して、ＯＮキー３が入力されると、ＣＰＵ１０は、まずステップＳ１０で、メモリ１００に格納された値の初期化を行なう。具体的には、ステップＳ１０では、出題数が「１」とされ、正解数が「０」とされ、演算子フラグ記憶部１０９に格納された各演算子のフラグが「０」とされ、出題演算子記憶部１１０に格納されたＰＯＰＥ［０］およびＰＯＰＥ［１］が「０」とされ、そして、足し算問題記憶部１１１のＰＴ［０］〜ＰＴ［４］、引き算問題記憶部１１２のＰＨ［０］〜ＰＨ［４］、掛算問題記憶部１１３のＰＫ［０］〜ＰＫ［４］、割算問題記憶部１１４のＰＷ［０］〜ＰＷ［４］が、それぞれ初期値である「１００」とされる。
【００４３】
次に、ＣＰＵ１０は、ステップＳ２０で、これから出題する計算問題における演算子を決定し、決定した演算子に対応した値を演算子記憶部１０６に格納する。
【００４４】
次に、ＣＰＵ１０は、ステップＳ３０で、これから出題する計算問題における被演算数および演算数を決定し、決定した被演算数および演算数に対応した値を被演算数記憶部１０２および演算数記憶部１０４にそれぞれ格納する。
【００４５】
次に、ＣＰＵ１０は、ステップＳ４０で、入力値記憶部１０８に格納されたＩＮの値を「１００」に初期化し、ステップＳ５０に処理を進める。
【００４６】
ステップＳ５０では、ＣＰＵ１０は、図２に示したように、出題数、計算問題、および、ユーザの入力した入力値を液晶表示装置２に表示させ、処理をステップＳ６０に進める。
【００４７】
なお、出題数は、出題数記憶部１０３に格納された値に基づいて、出題数表示部２１に表示される。
【００４８】
また、計算問題は、被演算数記憶部１０２に格納された値に基づいた被演算数と、演算子記憶部１０５に記憶された値に基づいた演算子と、演算数記憶部１０４に格納された値に基づいた演算数と、等号とによって構成され、そして、被演算数表示部２２、演算子表示部２３、演算数表示部２４、および、演算数表示部２４に隣接する等号が表示された部分に渡って表示される。
【００４９】
ユーザの入力した入力値は、入力値記憶部１０８に格納された値である。入力値記憶部１０８に格納される値は、ユーザがテンキー５を入力することによって適宜更新される。ただし、ＩＮの値が「１００」とされている状態では、ＣＰＵ１０は、解答表示部２５を空欄とし、数値の表示を行なわない。
【００５０】
ステップＳ６０では、ＣＰＵ１０は、ユーザからのキー入力を待ち、キー入力がなされた場合には、入力されたキーの種類を判別する。そして、ＣＰＵ１０は、ＯＮキー３が入力されたと判断するとステップＳ１０に処理を戻し、決定キー４が入力されたと判断するとステップＳ１００に処理を進め、そして、テンキー５が入力されたと判断するとステップＳ７０に処理を進める。
【００５１】
ステップＳ７０では、ＣＰＵ１０は、ＩＮの値をチェックする。そして、ＩＮの値が１００であるか、または、１０を越えている場合には、ステップＳ９０に処理を進め、それ以外の場合にはステップＳ８０に処理を進める。
【００５２】
ステップＳ９０では、ＣＰＵ１０は、ＩＮの値を入力されたキーに対応する値に更新して、ステップＳ１０に処理を戻す。たとえば、テンキーの中の「２」に対応するキーが入力された場合には、ＩＮの値は「２」に更新される。
【００５３】
一方、ステップＳ８０では、ＣＰＵ１０は、現在のＩＮの値を１０の位とし、現在入力されたキーに対応する値を１の位とする値に、ＩＮの値を更新して、ステップＳ１０に処理を戻す。たとえば、現在ＩＮの値が「１」である状態で、テンキーの中の「５」に対応するキーが入力された場合には、ＩＮの値は「１５」に更新される。
【００５４】
また、ステップＳ１００では、ＣＰＵ１０は、ＩＮの値が正解であるか否かを判断する。ここでは、ＣＰＵ１０は、たとえば、ＣＡＬ１、ＯＰＥ、および、ＣＡＬ２の値から、現在出題されている計算問題の解答を算出し、当該解答と、ＩＮの値とを比較することによって、ＩＮの値が正解であるか否かを判断する。そして、正解であると判断するとステップＳ１１０に処理を進め、正解ではないと判断するとステップＳ１２０に処理を進める。
【００５５】
ステップＳ１１０では、ＣＰＵ１０は、ＯＫの値を１加算更新して、ステップＳ１２０に処理を進める。
【００５６】
ステップＳ１２０では、ＣＰＵ１０は、ＰＲＢの値を１加算更新して、ステップＳ１３０に処理を進める。
【００５７】
ステップＳ１３０では、ＣＰＵ１０は、ＰＲＢの値が１０１に達したか否かを判断し、達したと判断するとステップＳ１４０へ処理を進め、まだ達していないと判断するとステップＳ２０に処理を戻す。
【００５８】
ステップＳ１４０では、ＣＰＵ１０は、液晶表示装置２に正解数を表示させて、ステップＳ１５０に処理を進める。
【００５９】
ステップＳ１５０では、ＣＰＵ１０は、キー入力を待つ。そして、入力があった場合には、それがＯＮキー３であるか否かを判断し、そうであればステップＳ１０へ処理を戻す。
【００６０】
以上説明した処理の内容に基づいた、液晶表示装置２における表示態様を図５（Ａ）〜図５（Ｇ）に示す。
【００６１】
図５（Ａ）は、１問目の問題が表示されている状態を示す図である。出題数表示部２１には「１」が表示され、被演算数表示部２２には「７」が表示され、演算子表示部２３には「×」が表示され、演算数表示部２４には「２」が表示されている。なお、図５（Ａ）は、ＩＮの値が「１００」の状態に対応している。これにより、解答表示部２５では、何も表示されていない。
【００６２】
図５（Ｂ）は、図５（Ａ）に示された状態から、ステップＳ７０〜ステップＳ９０の処理によってＩＮの値が入力された状態を示す。ＩＮの値が入力されることによって、ＩＮの値は初期値の「１００」から別の値に更新される。これにより、解答表示部２５に、ＩＮの値に対応した数値が表示される。図５（Ｂ）では、その一例として「１４」が示されている。
【００６３】
図５（Ｃ）は、図５（Ｂ）に示された状態から、ステップＳ１００〜ステップＳ１３０の処理が実行されたことによって、２問目の計算問題が表示されている状態を示す。図５（Ｃ）では、ＰＲＢが更新されることによって、出題数表示部２１に表示される数値が「２」とされている。また、図５（Ｃ）は、ＩＮが初期値である「１００」の状態を示しているため、解答表示部２５には、図５（Ａ）と同様に、何も表示されていない。
【００６４】
図５（Ｄ）は、図５（Ｃ）に示された状態から、ステップＳ７０〜ステップＳ９０の処理によってＩＮの値が入力された状態を示す。ＩＮの値が入力されることによって、ＩＮの値は初期値の「１００」から別の値に更新される。これにより、解答表示部２５に、ＩＮの値に対応した数値が表示される。図５（Ｄ）では、その一例として「８」が示されている。
【００６５】
図５（Ｅ）は、ステップＳ１０〜ステップＳ１３０の処理が適宜実行されて、１００問目の計算問題が表示されている状態を示す。図５（Ｅ）に示された状態では、ＰＲＢが「１００」となっている。これにより、出題数表示部２１に表示される数値が「１００」とされている。また、図５（Ｅ）は、ＩＮが初期値である「１００」の状態を示しているため、解答表示部２５には、図５（Ａ）と同様に、何も表示されていない。
【００６６】
図５（Ｆ）は、図５（Ｅ）に示された状態から、ステップＳ７０〜ステップＳ９０の処理によってＩＮの値が入力された状態を示す。ＩＮの値が入力されることによって、ＩＮの値は初期値の「１００」から別の値に更新される。これにより、解答表示部２５に、ＩＮの値に対応した数値が表示される。図５（Ｆ）では、その一例として「１３」が示されている。
【００６７】
図５（Ｇ）は、図５（Ｆ）に示された状態から、ステップＳ１００〜ステップＳ１４０の処理が実行された場合の表示態様を示す。図５（Ｆ）に示された状態から、ステップＳ１００〜ステップＳ１２０が実行されることによってＰＲＢの値が「１０１」に更新される。これによって、処理は、ステップＳ１３０からステップＳ１４０に進められる。そして、ステップＳ１４０の処理によって、図５（Ｇ）に示されるように、液晶表示装置２にＯＫの値が表示される。なお、本実施の形態では、一度の計算ドリルで１００問の計算問題が表示されるので、正解数が、正解率と等しくなるため、図５（Ｇ）に示された表示態様では、正解数が、正解率として表示されている。
【００６８】
図６は、図４を参照して説明した、計算問題における演算子を決定する処理（ステップＳ２０）のサブルーチンのフローチャートである。
【００６９】
図６を参照して、演算子を決定する処理では、ＣＰＵ１０は、まずステップＳ２０１で、乱数値（ＲＮＤ）を発生させる。
【００７０】
次に、ステップＳ２０３で、ＣＰＵ１０は、メモリ１００に記憶された表（第１演算子決定表）に基づいて、ステップＳ２０１で発生させたＲＮＤの値に対応する演算子を決定する。図７に、第１演算子決定表の一例を示す。
【００７１】
図７を参照して、第１演算子決定表では、ＲＮＤの上位２桁の値が６パターンの場合分けをされて記載されており、そして、各パターンに対応した演算子が示されている。また、第１演算子決定表では、決定された演算子とともに、括弧書きで、各演算子に対応したＯＰＥの値が示されている。なお、本実施の形態では、ＣＰＵ１０は、２桁以上の桁数を有する乱数を発生させ、そして、発生された乱数の中の上位２桁が演算子の決定に利用されるが、乱数中の２桁の数が利用されれば、それは上位２桁に限定されるものではない。
【００７２】
第１演算子決定表では、右端に、ＴＦ，ＨＦ，ＫＦ，ＤＦのフラグの値の組み合わせが記載されている。そして、第１演算子決定表では、ＲＮＤの値と演算子の対応関係は、これらの値の組み合わせによって異なっている。
【００７３】
具体的には、たとえば、ＴＦ，ＨＦ，ＫＦ，ＤＦの値がすべて０である場合には、ＲＮＤの値が、００〜２４であれば演算子は「＋」に、２５から４９であれば演算子は「−」に、５０〜７４であれば演算子は「×」に、そして、７５〜９９であれば演算子は「÷」に、それぞれ決定される。つまり、このような場合には、４種類の演算子が計算問題の演算子として決定される確率は等しくなる。
【００７４】
また、たとえば、ＴＦ，ＨＦ，ＫＦの値が０であってＤＦの値が１である場合には、ＲＮＤの値が、００〜３３であれば演算子は「＋」に、３４から６６であれば演算子は「−」に、そして、６７〜９９であれば演算子は「×」に、それぞれ決定される。つまり、このような場合には、すでにフラグの値が１とされている演算子（「÷」）以外の３種類の演算子が計算問題の演算子として決定される確率はほぼ等しくなる。
【００７５】
また、たとえば、ＴＦおよびＨＦの値が１であってＫＦおよびＤＦの値が０である場合には、ＲＮＤの値が、００〜４９であれば演算子は「×」に、そして、５０から９９であれば演算子は「÷」に、それぞれ決定される。つまり、このような場合には、すでにフラグの値が１とされている演算子（「＋」と「−」）以外の２種類の演算子が計算問題の演算子として決定される確率は等しくなる。
【００７６】
また、たとえば、ＴＦ，ＨＦ，ＫＦの値が１であってＤＦの値が０である場合には、ＲＮＤの値がどの値がどのような値であっても演算子が「÷」に決定される。つまり、このような場合には、すでにフラグの値が１とされている３種類の演算子（「＋」、「−」、および、「×」）以外の、残りの演算子が計算問題の演算子として決定される。つまり、第１演算子決定表では、乱数が、フラグの値が１とされている演算子以外の演算子と対応するように、対応関係が記憶されている。
【００７７】
再度図６を参照して、ステップＳ２０３で演算子を決定すると（ＯＰＥの値を得ると）、ＣＰＵ１０は、ステップＳ２０５で、ステップＳ２０３で得たＯＰＥの値をチェックする。なお、ＯＰＥの値は、演算子記憶部１０６に記憶され、また、演算子を決定する処理が実行されるごとに更新される。そして、ＯＰＥの値が１であればステップＳ２０７でＴＦのフラグを１に設定し、ステップＳ２１５に処理を進める。また、ＯＰＥの値が２であればステップＳ２０９でＨＦのフラグを１に設定し、ステップＳ２１５に処理を進める。また、ＯＰＥの値が３であればステップＳ２１１でＫＦのフラグを１に設定し、ステップＳ２１５に処理を進める。また、ＯＰＥの値が４であればステップＳ２１３でＨＦのフラグを１に設定し、ステップＳ２１５に処理を進める。つまり、ステップＳ２０７〜ステップＳ２１３では、現在設定された演算子に対応したフラグが「１」にセットされる。
【００７８】
そして、ステップＳ２１５では、ＣＰＵ１０は、ＴＦ，ＨＦ，ＫＦ，ＤＦのフラグの値がすべて「１」であるか否かを判断し、そうであると判断するとステップＳ２１７でこれらのフラグの値をすべてリセットして、処理をリターンさせる。また、そうではないと判断すると、ステップＳ２１７の処理を実行させることなく、処理をリターンさせる。
【００７９】
以上図６を参照して説明した演算子決定処理が実行される場合、演算子フラグ記憶部１０９によって、演算子設定手段が過去に設定した１種類〜３種類の演算子を記憶する演算子記憶手段が構成されている。
【００８０】
そして、図７を利用して説明したように、４種類の演算子をまんべんなく設定するための処理が実行されることにより、演算子が乱数を利用して設定されても、確実かつ容易に、出題される計算問題に対して４種類の演算子をランダムに設定することができる。
【００８１】
図８に、図６を参照して説明した演算子決定処理の、変形例のフローチャートを示す。
図８を参照して、演算子を決定する処理では、ＣＰＵ１０は、まずステップＳ２５１で、乱数値（ＲＮＤ）を発生させる。
【００８２】
次に、ＣＰＵ１０は、ステップＳ２５３で、メモリ１００に記憶された表（第２演算子決定表）に基づいて、ステップＳ２５１で発生させたＲＮＤの値に対応する演算子を決定する。図９に、第２演算子決定表の一例を示す。
【００８３】
図９を参照して、第２演算子決定表では、ＲＮＤの上位２桁の値が４パターンの場合分けをされて記載されており、そして、各パターンに対応した演算子が示されている。また、第２演算子決定表では、決定された演算子とともに、括弧書きで各演算子に対応したＯＰＥの値が示されている。なお、第１演算子決定表に対する説明と同様に、演算子の決定に利用される数値は、乱数中の２桁の数であれば上位２桁に限定されるものではない。
【００８４】
第２演算子決定表では、ＴＦ，ＨＦ，ＫＦ，ＤＦの値に関係無く、ＲＮＤの値が、００〜２４であれば演算子は「＋」に、２５から４９であれば演算子は「−」に、５０〜７４であれば演算子は「×」に、そして、７５〜９９であれば演算子は「÷」に、それぞれ決定される。
【００８５】
再度図８を参照して、ステップＳ２５３で演算子を決定すると（ＯＰＥの値を得ると）、ＣＰＵ１０は、ステップＳ２５５で、ＯＰＥの値がＰＯＰＥ［０］と同じであるか否かを判断する。なお、ＰＯＰＥ［０］とは、前回出題した計算問題で設定された演算子に対応する値である。そして、ＣＰＵ１０は、同じであると判断するとステップＳ２５１に処理を戻し、異なると判断するとステップＳ２５７へ処理を進める。
【００８６】
ステップＳ２５７では、ＣＰＵ１０は、ＯＰＥの値がＰＯＰＥ［１］と同じであるか否かを判断する。なお、ＰＯＰＥ［１］とは、前々回出題した計算問題で設定された演算子に対応する値である。そして、ＣＰＵ１０は、同じであると判断するとステップＳ２５１に処理を戻し、異なると判断するとステップＳ２５９へ処理を進める。
【００８７】
ステップＳ２５９では、ＣＰＵ１０は、ＰＯＰＥ［１］の値をＰＯＰＥ［０］の値で更新し、また、ＰＯＰＥ［０］の値をＯＰＥの値で更新して、処理をリターンさせる。
【００８８】
以上、図８を参照して説明した演算子決定処理によれば、まず乱数を利用して演算子が暫定的に決定された後、当該演算子が、前回および前々回の計算問題で設定された演算子と同じではないかどうかが判断される。
【００８９】
そして、前回の演算子と前々回の演算子のいずれとも異なる場合には、暫定的に決定されていた演算子が、今回の計算問題で利用する演算子として設定される。
【００９０】
一方、暫定的に決定されていた演算子が、前回の演算子か前々回の演算子の少なくとも一方と同じである場合には、再度乱数を発生させて、今回の演算子が改めて決定される。なお、再度決定された演算子についても、同様に、前回および前々回の演算子と同じでないかどうかが判断され、同じであれば、もう一度決定し直される。
【００９１】
つまり、以上説明した図８の演算子決定処理によれば、計算問題に利用される演算子として、前回および前々回に出題された計算問題と同じ演算子が設定されることを回避される。
【００９２】
また、図８の演算子決定処理では、ＯＰＥ［０］が更新されることによって、今回どの演算子が設定されたかということが、次回の演算子の設定に利用されることになる。
【００９３】
以上図８を参照して説明した演算子決定処理が実行される場合、出題演算子記憶部１１０によって、演算子設定手段が前回設定した演算子および前々回設定した演算子を記憶する演算子記憶手段が構成されている。
【００９４】
また、図９を利用して説明したように、前回および前々回設定された演算子が設定されることを回避する処理がなされることにより、演算子が乱数を利用して設定されても、確実かつ容易に、出題される計算問題に対して演算子をランダムに設定することができる。
【００９５】
図１０に、図６を参照して説明した演算子決定処理の、さらなる変形例のフローチャートを示す。
【００９６】
図１０に示された処理では、ＣＰＵ１０は、まずステップＳ２５１で、乱数値（ＲＮＤ）を発生させる。
【００９７】
次に、ＣＰＵ１０は、ステップＳ２５３で、メモリ１００に記憶された表（第２演算子決定表：図９参照）に基づいて、ステップＳ２５１で発生させたＲＮＤの値に対応する演算子を決定する。
【００９８】
次に、ＣＰＵ１０は、ステップＳ２５５で、ＯＰＥの値がＰＯＰＥ［０］と同じであるか否かを判断し、同じであると判断するとステップＳ２６１へ、異なると判断するとステップＳ２５７へそれぞれ処理を進める。
【００９９】
ステップＳ２５７では、ＣＰＵ１０は、ＯＰＥの値がＰＯＰＥ［１］と同じであるか否かを判断する。そして、ＣＰＵ１０は、同じであると判断するとステップＳ２６１へ、異なると判断するとステップＳ２５９へ、それぞれ処理を進める。
【０１００】
なお、ここで言及したＰＯＰＥ［０］およびＰＯＰＥ［１］は、図８を参照して説明した処理において説明したものと同様の値である。
【０１０１】
ステップＳ２６１では、ＣＰＵ１０は、ＲＮＤの値を、当該値に２５を加えた後その１００で割った余りの数（「（ＲＮＤ＋２５）ＭＯＤ１００」で示される数）に更新し、処理をステップＳ２５３に戻す。
【０１０２】
一方、ステップＳ２５９では、ＣＰＵ１０は、ＰＯＰＥ［１］の値をＰＯＰＥ［０］の値で更新し、また、ＰＯＰＥ［０］の値をＯＰＥの値で更新して、処理をリターンさせる。
【０１０３】
以上、図１０を参照して説明した演算子決定処理によれば、まず乱数を利用して演算子が暫定的に決定された後、当該演算子が、前回および前々回の計算問題で設定された演算子と同じではないかどうかが判断される。そして、前回の演算子と前々回の演算子のいずれとも異なる場合には、当該暫定的に決定された演算子が、次の計算問題に利用される演算子として設定される。一方、前回または前々回の演算子のいずれかと同じ場合には、ステップＳ２６１の処理として示されるように乱数が補正されて、再度、演算子が決定され、上記のような判断がなされる。
【０１０４】
つまり、以上説明した図１０の演算子決定処理によれば、乱数を使用して設定（決定）された演算子が演算子記憶手段に記憶された演算子と同じ場合には、乱数補正手段により補正された乱数を使用して演算子が再度設定（決定）されることになる。
【０１０５】
図１１および図１２は、図４を参照して説明した、計算問題における被演算数および演算数を決定する処理（ステップＳ３０）のサブルーチンのフローチャートである。
【０１０６】
図１１を参照して、被演算数および演算数を決定する処理では、まずステップＳ３０１で、ＣＰＵ１０は、乱数値（ＲＮＤ）を発生させる。
【０１０７】
次に、ステップＳ３０３で、ＣＰＵ１０は、メモリ１００に記憶された表（乱数・演算数の変換表）に基づいて、被演算数（ＣＡＬ１）を決定する。なお、乱数・演算数の変換表の一例を図１３に示す。
【０１０８】
図１３を参照して、当該変換表では、縦軸にＲＮＤの１桁目の値が並べられ、横軸にＲＮＤの２桁目の値が並べられている。被演算数の値は、当該変換表において、ＲＮＤの１桁目と２桁目の値の交わるところにある値とされる。当該変換表では、被演算数の値は、基本的にＲＮＤの１桁目の値とされる。ただし、１桁目の値が「０」である場合には、被演算数の値は、２桁目の値とされる。これにより、被演算数が、「１」〜「９」の値に決定される確率は「１１／１００」であるのに対し、「０」の値に決定される確率は「１／１００」である。
【０１０９】
つまり、ＣＰＵ１０は、図１３に示されたような変換表を利用して被演算数を決定することによって、被演算数の値が「０」に決定される確率を、他の値に決定される確率よりも低下させる制御を実行していることになる。これにより、出題される計算問題において被演算数または演算数が「０」とされることによって、当該計算問題が容易なものとなってしまうことを抑制できる。なお、このように確率を低下させる制御は、図１３に示したような変換表を利用することに限定されず、修正された変換表を利用することによって、または、被演算数を決定するための適切なプログラムを利用することによって、実現されることも可能である。
【０１１０】
ステップＳ３０３で被演算数を決定した後、ＣＰＵ１０は、ステップＳ３０５で、再度乱数値（ＲＮＤ）を発生させて、処理をステップＳ３０７に進める。
【０１１１】
ステップＳ３０７では、ＣＰＵ１０は、ステップＳ３０５で発生させた乱数を利用し、被演算数を決定したのと同様に変換表（図１３参照）に基づいて、演算数（ＣＡＬ２）を決定する。
【０１１２】
ＣＰＵ１０は、演算数を被演算数と同様に決定することから、演算数についても、その値が「０」に決定される確率を、他の値に決定される確率よりも低下させる制御を実行していることになる。
【０１１３】
次に、ＣＰＵ１０は、ステップＳ３０３で決定した被演算数（ＣＡＬ１）とステップＳ３０５で決定した演算数（ＣＡＬ２）とを利用してＴＭＰを算出し、仮バッファ１０７に格納する。なお、ＴＭＰは、ＣＡＬ１の値に１０を掛けたものにＣＡＬ２の値を加えた値とされる。たとえば、ＣＡＬ１が「６」でありＣＡＬ２が「４」であれば、ＴＭＰは「６４」である。
【０１１４】
図１２を参照して、次に、ＣＰＵ１０は、ステップＳ３１１でＯＰＥの値をチェックする。そして、ＣＰＵ１０は、ＯＰＥの値が「１」であればステップＳ３１３へ、ＯＰＥの値が「２」であればステップＳ３２５へ、ＯＰＥの値が「３」であればステップＳ３２１へ、そして、ＯＰＥの値が「４」であればステップＳ３３１へ、それぞれ処理を進める。
【０１１５】
ステップＳ３１３では、ＣＰＵ１０は、ＰＴ［０］〜ＰＴ［４］の中にＴＭＰと同じ値が有るか否かを判断し、有ると判断すればステップＳ３１５へ、無いと判断すればステップＳ３１９へ、それぞれ処理を進める。
【０１１６】
ステップＳ３１５では、ＣＰＵ１０は、ＴＭＰの値を、当該値に１を加えた後その１００で割った余りの数（「（ＴＭＰ＋１）ＭＯＤ１００」で示される数）に更新し、処理をステップＳ３１７に進める。
【０１１７】
ステップＳ３１７では、ＣＰＵ１０は、ステップＳ３１５で更新したＴＭＰの値に基づいてＣＡＬ１（被演算数）とＣＡＬ２（演算数）とを決定し直して、処理をステップＳ３１１に戻す。なお、ステップＳ３１７では、ＴＭＰの中の、１０の位の値（下２桁目の値）がＣＡＬ１とされ、１の位の値（下１桁目の値）がＣＡＬ２とされる。
【０１１８】
一方、ステップＳ３１９では、ＣＰＵ１０は、ＰＴ［０］の値をＴＭＰの値に更新し、また、ＰＴ［１］〜ＰＴ［４］の値をそれぞれのその時点のＰＴ［０］〜ＰＴ［３］の値に更新して、処理をリターンさせる。
【０１１９】
また、ステップＳ３２１では、ＣＰＵ１０は、ＰＫ［０］〜ＰＫ［４］の中にＴＭＰと同じ値が有るか否かを判断し、有ると判断すればステップＳ３１５へ、無いと判断すればステップＳ３２３へ、それぞれ処理を進める。
【０１２０】
ステップＳ３２３では、ＣＰＵ１０は、ＰＫ［０］の値をＴＭＰの値に更新し、また、ＰＫ［１］〜ＰＫ［４］の値をそれぞれのその時点のＰＫ［０］〜ＰＫ［３］の値に更新して、処理をリターンさせる。
【０１２１】
また、ステップＳ３２５では、ＣＰＵ１０は、ＰＨ［０］〜ＰＨ［４］の中にＴＭＰと同じ値が有るか否かを判断し、有ると判断すればステップＳ３１５へ、無いと判断すればステップＳ３２７へ、それぞれ処理を進める。
【０１２２】
ステップＳ３２７では、ＣＰＵ１０は、現在のＣＡＬ１の値を、ＣＡＬ１の値にＣＡＬ２の値を加えたものに更新し、ステップＳ３２９へ処理を進める。
【０１２３】
そして、ステップＳ３２９で、ＣＰＵ１０は、ＰＨ［０］の値をＴＭＰの値に更新し、また、ＰＨ［１］〜ＰＨ［４］の値をそれぞれのその時点のＰＨ［０］〜ＰＨ［３］の値に更新して、処理をリターンさせる。
【０１２４】
また、ステップＳ３３１では、ＣＰＵ１０は、ＰＷ［０］〜ＰＷ［４］の中にＴＭＰと同じ値が有るか否かを判断し、有ると判断すればステップＳ３１５へ、無いと判断すればステップＳ３３３へ、それぞれ処理を進める。
【０１２５】
ステップＳ３３３では、ＣＰＵ１０は、現在のＣＡＬ１の値をＣＡＬ１とＣＡＬ２の積に更新し、ステップＳ３３５へ処理を進める。
【０１２６】
そして、ステップＳ３３５で、ＣＰＵ１０は、ＰＷ［０］の値をＴＭＰの値に更新し、また、ＰＷ［１］〜ＰＷ［４］の値をそれぞれのその時点のＰＷ［０］〜ＰＷ［３］の値に更新して、処理をリターンさせる。
【０１２７】
以上説明した本実施の形態では、ステップＳ３１５およびステップＳ３１７の処理は、暫定的に設定された被演算数と演算数の組み合わせが、同じ演算子が利用された過去５回の計算問題において設定された組み合わせと同一である場合に実行される処理である。本実施の形態では、足し算問題記憶部１１１、引き算問題記憶部１１２、掛算問題記憶部１１３、割算問題記憶部１１４によって、数式記憶手段が構成されている。そして、ステップＳ３１５およびステップＳ３１７の処理が、暫定的に設定された演算数および被演算数を含む式が数式記憶手段に記憶された式と同じである場合に、暫定的に設定された演算数および被演算数を補正する処理に相当する。
【０１２８】
また、以上説明した本実施の形態では、ステップＳ３２７の処理は、これから出題される計算問題において演算子が減号であった場合の処理である。具体的には、この処理は、乱数に含まれる２つの桁の数値を加算した値を被演算数と設定する処理に相当する。これにより、演算子が減号である場合に、常に正解を正の数とすることができる。
【０１２９】
また、以上説明した本実施の形態では、ステップＳ３３３の処理は、これから出題される計算問題において演算子が除号であった場合の処理である。具体的には、この処理は、乱数に含まれる２つの桁の数値の積を被演算数と設定する処理に相当する。これにより、演算子が減号である場合に、常に、正解を整数とすることができる。
【０１３０】
以上説明した本実施の形態では、図４を参照して説明した計算ドリル処理を実行することによって、計算問題を作成し、そして、液晶表示装置２に当該計算問題を表示させるＣＰＵ１０によって、表示制御手段が構成される。なお、計算ドリル処理等を実行するためのプログラムは、メモリ１００に記憶されている。ただし、電卓１が、図１４に示すように、メディアドライブ５０等の、当該電卓１に対して着脱可能な記録媒体に記録された情報を読取るための装置を備えている場合には、上記のプログラムは、そのような記録媒体（図１４の記録媒体５１）に記録されていても良い。
【０１３１】
なお、図４を参照して説明された計算ドリル処理においては、ステップＳ１００でＩＮが正解であるか否かが判断された場合、その結果を液晶表示装置２に表示する処理が行なわれても良い。
【０１３２】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１３３】
１  電卓、２  液晶表示装置、３  ＯＮキー、４  決定キー、５  テンキー、１０  ＣＰＵ、１１  ＶＲＡＭ、１２  入力装置、２１  出題数表示部、２２  被演算数表示部、２３  演算子表示部、２４  演算数表示部、２５  解答表示部、１００  メモリ、１０１
乱数値記憶部、１０２  被演算数記憶部、１０３  出題数記憶部、１０４  演算数記憶部、１０５  正解数記憶部、１０６  演算子記憶部、１０７  仮バッファ、１０８  入力値記憶部、１０９  演算子フラグ記憶部、１１０  出題演算子記憶部、１１１  足し算問題記憶部、１１２  引き算問題記憶部、１１３  掛算問題記憶部、１１４  割算問題記憶部。
【図１】
0004463318.tif 000002
【図２】
0004463318.tif 000003
【図３】
0004463318.tif 000004
【図４】
0004463318.tif 000005
【図５】
0004463318.tif 000006
【図６】
0004463318.tif 000007
【図７】
0004463318.tif 000008
【図８】
0004463318.tif 000009
【図９】
0004463318.tif 000010
【図１０】
0004463318.tif 000011
【図１１】
0004463318.tif 000012
【図１２】
0004463318.tif 000013
【図１３】
0004463318.tif 000014
【図１４】
0004463318.tif 000015