(57)【要約】【課題】先に入力した計算式の計算結果を入力中の計算式に適切に利用可能な電子機器及びプログラムを提供すること。【解決手段】計算式記憶領域３４１には、計算式と計算結果が順次記憶される。そして、入力部３２の所定の操作によって計算式記憶領域３４１に記憶された計算結果が選択され、表示部３３に表示されると、入力中の計算式に選択された計算結果が挿入される。更に、表示部３３に表示された計算式を構成する文字が入力部３２の所定の操作によって選択される際に、選択された文字が挿入された計算結果である場合、当該計算結果に対応する計算式と計算式番号が表示部３３に表示される。【選択図】    図３
2004206405.tif 000002
【特許請求の範囲】
【請求項１】
計算式を入力する入力手段と、
この入力手段によって入力された計算式を計算する計算手段と、
この計算手段によって計算された計算式と計算結果とを対応付けて記憶する式記憶手段と、
この式記憶手段に記憶された計算式と計算結果とを表示させる制御を行う表示制御手段と、
前記入力手段による入力中の計算式に前記表示制御手段によって表示制御された計算結果を挿入する挿入手段と、
を備えることを特徴とする電子機器。
【請求項２】
前記表示制御手段によって表示制御された入力中の計算式の一部分を指定する指定手段と、
この指定手段によって指定された計算式の一部分が前記挿入手段によって挿入された計算結果に対応する場合、当該計算結果に対応する計算式を前記式記憶手段から読み出して表示させる制御を行う式表示制御手段と、
を更に備えることを特徴とする請求項１に記載の電子機器。
【請求項３】
前記式記憶手段は、前記計算手段によって計算された計算式と計算結果とを計算された順番に対応付けて記憶する手段を有することを特徴とする請求項１又は２に記載の電子機器。
【請求項４】
前記表示制御手段は、前記式記憶手段に記憶された計算式及び計算結果を前記計算手段によって計算された順番に表示させる手段を有することを特徴とする請求項１〜３の何れか一項に記載の電子機器。
【請求項５】
前記挿入手段によって挿入される計算結果に対応する計算式に対して式番号を付与する付与手段を更に備え、
前記式表示制御手段は、前記指定手段によって指定された入力中の計算式の一部分が前記挿入手段によって挿入された計算結果に対応する場合に、当該計算結果に対応する計算式及び前記付与手段によって付与された式番号を表示させる制御を行う手段を有することを特徴とする請求項２に記載の電子機器。
【請求項６】
コンピュータに、
計算式を入力する入力手段と、
この入力手段によって入力された計算式を計算する計算手段と、
この計算手段によって計算された計算式と計算結果とを対応付けて記憶する式記憶手段と、
この式記憶手段に記憶された計算式と計算結果とを表示させる制御を行う表示制御手段と、
前記入力手段による入力中の計算式に前記表示制御手段によって表示制御された計算結果を挿入する挿入手段と、
を実現させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、入力された計算式について計算を行い計算結果を表示する電子機器及びその処理にかかるプログラムに関するものである。
【０００２】
【従来の技術】
従来、例えば電卓と称される電子機器において、過去の計算結果を入力中の計算式に引用する方法として、予め計算結果を変数メモリに記憶させ、所定のキー操作を行うことによって記憶された計算結果を呼び出して引用する方法が知られている。また、自動的に最新の計算結果が記憶される機能を有する電卓の場合、所定のキー操作を行うことによって、最新の計算結果を呼び出して引用することができる。
【０００３】
更に、複数のモードを実行可能な電卓において、計算式を順次記憶し、一旦電源をオフした後、再度電源をオンした際に、同じモードにおいて記憶された計算式及び計算結果を呼び出す機能を搭載した電卓も知られている（例えば、特許文献１）。
【０００４】
【特許文献１】
特開平８−２０２６６３号公報（第４−１１頁、第１図）
【０００５】
【発明が解決しようとする課題】
しかし、上述のような電卓において、変数メモリに記憶された計算結果や最新の計算結果を呼び出した場合、計算結果のみが呼び出されるため、その計算結果がどのような計算式から導出されたものか分かり難かった。従って、呼び出した計算結果に対する計算式を知るためには、予め計算式を紙等に記録しておく必要があり、手間がかかっていた。
【０００６】
また、特許文献１に記載の発明の場合、過去の計算式と計算結果を呼び出すことが可能であるが、入力している計算式に過去に入力した計算式の計算結果を利用して追加するといったことはできなかった。
【０００７】
本発明の目的は、先に入力した計算式の計算結果を入力中の計算式に適切に利用可能な電子機器及びプログラムを提供することである。
【０００８】
【課題を解決するための手段】
以上の課題を解決するために、請求項１に記載の発明の電子機器は、計算式を入力する入力手段（例えば、図１の操作キー１００）と、この入力手段によって入力された計算式を計算する計算手段（例えば、図３のＣＰＵ３１；図９のステップＥ１）と、この計算手段によって計算された計算式と計算結果とを対応付けて記憶する式記憶手段（例えば、図３の計算式記憶領域３４１、図３のＣＰＵ３１；図９のステップＥ３）と、この式記憶手段に記憶された計算式と計算結果とを表示させる制御を行う表示制御手段（例えば、図３のＣＰＵ３１；図１１のステップＧ２、Ｇ３）と、前記入力手段による入力中の計算式に前記表示制御手段によって表示制御された計算結果を挿入する挿入手段（例えば、図３のＣＰＵ３１；図８のステップＤ３）と、を備えることを特徴としている。
【０００９】
また、請求項６に記載の発明は、コンピュータに、計算式を入力する入力手段（例えば、図１の操作キー１００）と、この入力手段によって入力された計算式を計算する計算手段（例えば、図３のＣＰＵ３１；図９のステップＥ１）と、この計算手段によって計算された計算式と計算結果とを対応付けて記憶する式記憶手段（例えば、図３の計算式記憶領域３４１、図３のＣＰＵ３１；図９のステップＥ３）と、この式記憶手段に記憶された計算式と計算結果とを表示させる制御を行う表示制御手段（例えば、図３のＣＰＵ３１；図１１のステップＧ２、Ｇ３）と、前記入力手段による入力中の計算式に前記表示制御手段によって表示制御された計算結果を挿入する挿入手段（例えば、図３のＣＰＵ３１；図８のステップＤ３）と、を実現させるためのプログラムであることを特徴としている。
【００１０】
この請求項１及び６に記載の発明によれば、式記憶手段に記憶された計算結果を入力中の計算式に挿入する際に、その計算結果に対応する計算式を表示させることができる。従って、先に入力した計算式の計算結果を入力中の計算式に適切に利用することができる。
【００１１】
請求項２に記載の発明は、請求項１に記載の電子機器であって、前記表示制御手段によって表示制御された入力中の計算式の一部分を指定する指定手段（例えば、図１の左キー１８０Ｌ及び右キー１８０Ｒ、図３のＣＰＵ３１；図１０のステップＦ２）と、この指定手段によって指定された計算式の一部分が前記挿入手段によって挿入された計算結果に対応する場合、当該計算結果に対応する計算式を前記式記憶手段から読み出して表示させる制御を行う式表示制御手段（例えば、図３のＣＰＵ３１；図１０のステップＦ８）と、を更に備えることを特徴としている。
【００１２】
この請求項２に記載の発明によれば、入力中の計算式に挿入された計算結果に対応する計算式を簡単に表示させることができる。従って、入力中の計算式に先の計算結果を挿入した後でも、その計算結果に対応する計算式を確認できる。即ち、先に入力した計算式の計算結果を入力中の計算式に適切に利用することができる。
【００１３】
請求項３に記載の発明は、請求項１又は２に記載の電子機器であって、前記式記憶手段は、前記計算手段によって計算された計算式と計算結果とを計算された順番に対応付けて記憶する手段（例えば、図３の計算式記憶領域３４１、図３のＣＰＵ３１；図９のステップＥ３）を有することを特徴としている。
【００１４】
更に、請求項４に記載の発明は、請求項１〜３の何れか一項に記載の電子機器であって、前記表示制御手段は、前記式記憶手段に記憶された計算式及び計算結果を前記計算手段によって計算された順番に表示させる手段（例えば、図３のＣＰＵ３１；図１１のステップＧ２、Ｇ３）を有することを特徴としている。
【００１５】
この請求項３及び４に記載の発明によれば、計算式と計算結果を式記憶手段に順番に記憶し、記憶された計算式と計算結果を順番に表示制御させることにより、入力中の計算式に記憶された計算結果を挿入する際に、複数ある計算結果を順次表示させることができる。また、計算された計算式の履歴を順番に確認することができ、例えば問題を解いた後に計算過程を再度学習することができる。
【００１６】
請求項５に記載の発明は、請求項２に記載の電子機器であって、前記挿入手段によって挿入される計算結果に対応する計算式に対して式番号を付与する付与手段（例えば、図１のＣａｌｌキー１７、図３のＣＰＵ３１；図８のステップＤ２）を更に備え、前記式表示制御手段は、前記指定手段によって指定された入力中の計算式の一部分が前記挿入手段によって挿入された計算結果に対応する場合に、当該計算結果に対応する計算式及び前記付与手段によって付与された式番号を表示させる制御を行う手段（例えば、図３のＣＰＵ３１；図１０のステップＦ８）を有することを特徴としている。
【００１７】
この請求項５に記載の発明によれば、紙面上で問題を解いた際の計算過程において、途中の式に式番号を付与した場合、同様の式番号を計算式に付与することができる。更に、指定手段によって指定された入力中の計算式の一部分が挿入手段によって挿入された計算結果に対応する場合、その計算結果に対応する計算式と式番号が表示されるため、挿入された計算結果に対応する計算式と式番号を簡単に把握することができる。
【００１８】
【発明の実施の形態】
以下、図１〜図１６を参照して、本発明に係る電子機器の実施の形態について詳細に説明する。尚、以下においては、本発明を、計算機能を有する関数電卓に適用した場合を例にとって説明するが、本発明が適用可能な実施形態は、これに限定されるものではなく、パソコンやＰＤＡ（パーソナルデジタルアシスタント）等、関数電卓以外の各種電子機器でも実施することができる。
【００１９】
図１は関数電卓１の外観図である。同図において、関数電卓１は、演算処理を行う演算ユニット（図示略）、操作キー１００、表示画面１９、内蔵電池や太陽電池等の電源（図示略）等を備え、金属や樹脂によって、例えばカード形状にケーシングされている。また、操作キー１００は、数字キー１１、四則演算キー１２、実行キー１３、ＡＣＯＮキー１４、ＤＥＬキー１５、機能選択キー１６、Ｃａｌｌキー１７、方向キー１８によって構成される。
【００２０】
数字キー１１、四則演算キー１２、実行キー１３、ＤＥＬキー１５及び機能選択キー１６は、従来の関数電卓と同様の操作入力手段であり、各種キーの内容については公知であるため、説明を省略する。
【００２１】
ＡＣＯＮキー１４は、関数電卓１の電源をオンする際に操作するキーである。また、関数電卓１の電源がオンの状態である際に操作されると、表示画面１９に表示されている数字や文字がクリアされ、関数電卓１の内蔵する記憶部（不図示）を初期化する処理等が行われる。Ｃａｌｌキー１７は、表示画面１９に表示された計算式に計算式番号を設定して記憶し、引用先の計算式に設定された計算式番号を挿入させるためのキーである。
【００２２】
方向キー１８は、上キー１８０Ｕ、下キー１８０Ｄ、左キー１８０Ｌ及び右キー１８０Ｒで構成される。左キー１８０Ｌ及び右キー１８０Ｒは、表示画面１９に表示される反転カーソルを移動させるためのキーである。また、上キーＵ及び下キーＤは、関数電卓１の内蔵する記憶部（不図示）に記憶されている計算式を表示画面１９に順次表示させるためのキーである。
【００２３】
表示画面１９は、上述した各種キーの押下に応じた文字や符号等、関数電卓１を使用するために必要な各種データが表示される部分であり、ドットによって文字が表示される。表示画面１９は、ＬＣＤ（Liquid Crystal Display）やＥＬＤ（Electronic Luminescent Display）等の素子であって、単数または複数の素子の組み合わせによって実現される。
【００２４】
更に、関数電卓１は記憶媒体２００用のスロット２０を備える。記憶媒体２００は、各種プログラムやデータ等を記憶する記憶媒体であって、例えば、メモリカード、ハードディスク等である。スロット２０は、記憶媒体２００を着脱自在に装着し、記憶媒体２００に対してデータの読み書きができる装置であって、記憶媒体２００の種類に応じて適宜選択される。
【００２５】
図２は表示画面１９の表示構成を説明する為の図である。本実施の形態では、表示画面１９に２行の表示段があることとして説明する。図２（ａ）は、数字キー１１、四則演算キー１２、機能選択キー１６等の操作によって入力中の計算式２１が表示画面１９に表示された状態を示した図である。計算式２１は、表示画面１９の１行目（入力行）に左詰めで表示される。また、計算式２１は入力されている最中であり、次の文字や符号が挿入される部分に下線カーソル１９１が表示される。
【００２６】
図２（ｂ）は、計算式２２と、その計算結果である解２３が表示された状態を示した図である。計算式２２の入力が終了した後、実行キー１３が操作されることによって計算式２２の計算が実行され、計算結果として解２３が表示される。解２３は、表示画面１９の２行目に右詰めで表示される。
【００２７】
また、左キー１８０Ｌ又は右キー１８０Ｒの操作により、計算式２２を構成する数字や符号等の文字上に反転カーソル１９２が表示される。そして、更に左キー１８０Ｌ又は右キー１８０Ｒが操作されることにより、反転カーソル１９２が計算式２２上を移動して表示される。反転カーソル１９２が表示された状態で、数字キー１１や四則演算キー１２を操作することにより、反転カーソル１９２の位置に操作されたキーに応じた数字や符号が挿入される。
【００２８】
図３は、関数電卓１の構成を示すブロック図である。同図に示すように、関数電卓１は、ＣＰＵ（Central Processing Unit：中央処理装置）３１、入力部３２、表示部３３、ＲＡＭ（Random Access Memory：随時書き込み読み出しメモリ）３４、ＲＯＭ（Read Only Memory：読み出し専用メモリ）３５及び記憶媒体読取部３６によって構成されており、各部はバス３７によって接続されている。
【００２９】
ＣＰＵ３１は、入力部３２の操作に従って対応したデータを入力し、ＲＯＭ３５に予め記憶されているメインプログラム３５１等の命令に従って、入力したデータの処理を行う。そして、処理結果をＲＡＭ３４へ記憶すると共に、当該処理結果を表示部３３に出力する等の回路各部の動作の制御を行う。このＣＰＵ３１には、入力部３２、表示部３３、ＲＡＭ３４、ＲＯＭ３５及び記憶媒体読取部３６がバス３７を介して接続されている。
【００３０】
入力部３２は、ユーザが数値や演算処理の実行指示等を入力する手段であって、図１の例では操作キー１００に相当する。そしてユーザに操作されたキーに対応する操作信号がＣＰＵ３１に出力される。表示部３３は、ＬＣＤやＥＬＤ等で構成される。この表示部３３は、図１に示す表示画面１９に相当するものである。
【００３１】
ＲＡＭ３４は、ＣＰＵ３１が実行する各種プログラムや、これらプログラムの実行に係るデータ等を一時的に保持するメモリ領域を備える。本実施の形態では、特に計算式記憶領域３４１及び状態データ記憶領域３４２を備える。
【００３２】
計算式記憶領域３４１は、入力部３２の操作によって入力された計算式とその解を記憶する。図４は、計算式記憶領域３４１のデータ構成について示した図である。計算式メモリブロック３４１０，３４２０，３４３０・・・は、入力部３２の操作によって計算式が入力され、最後に実行キー１３が操作されると作成される。計算式メモリブロックは実行キー１３が操作される毎にスタック形式で作成される。そして、各計算式メモリブロックには、計算式とその解が記憶される。
【００３３】
具体的には、表示部３３に計算式として「６−３」が表示された状態で実行キー１３が操作されると、「６−３」の計算が行われると共に、計算式記憶領域３４１内に計算式メモリブロック３４１０が作成される。そして、計算式メモリブロック３４１０に計算式として「６−３」とその解「３」が記憶される。
【００３４】
また、表示部３３に計算式記憶領域３４１に記憶された計算式が表示された状態でＣａｌｌキー１７が操作されると、表示されている計算式の記憶されている計算式メモリブロックに計算式番号が記憶される。図４において、計算式メモリブロック３４１０には計算式“６−３”と解“３”に対応する計算式番号３４１１として“▲１▼”が記憶されている。
【００３５】
そして、別の計算式の入力後、同様の操作が行われると、計算式メモリブロック３４２０が作成され、計算式と解が記憶される。また、計算式番号３４２１として“▲２▼”が記憶され、その後のＣａｌｌキー１７の操作による計算式番号は昇順に番号が付与される。
【００３６】
状態データ記憶領域３４２には、ＣＰＵ３１によるメインプログラム３５１の実行に従って設定される状態データが記憶される。具体的には、入力部３２によって計算式が入力中であるときは“入力”、計算式の計算が実行された後は“結果”が状態データとして記憶される。
【００３７】
ＲＯＭ３５は、関数電卓１の各種機能を実現する為のプログラムが記憶されている。本実施の形態において、ＲＯＭ３５には、メインプログラム３５１、ＡＣＯＮキー入力プログラム３５２、数字演算キー入力プログラム３５３、Ｃａｌｌキー入力プログラム３５４、実行キー入力プログラム３５５、左右キー入力プログラム３５６及び上下キー入力プログラム３５７が記憶されている。
【００３８】
メインプログラム３５１は、入力部３２の操作によって、ＲＡＭ３４に記憶されている各記憶領域の初期化を行い、入力部３２の操作内容に従った処理をサブルーチンプログラム（ＡＣＯＮキー入力プログラム３５２、数字演算キー入力プログラム３５３、Ｃａｌｌキー入力プログラム３５４、実行キー入力プログラム３５５、左右キー入力プログラム３５６及び上下キー入力プログラム３５７）を用いてＣＰＵ３１に実行させるためのプログラムである。
【００３９】
ＡＣＯＮキー入力プログラム３５２は、ＡＣＯＮキー１４の操作に従って、計算式記憶領域３４１に記憶されているデータを全て消去し、表示部３３の表示を“０”とするＡＣＯＮキー入力処理をＣＰＵ３１に実行させるためのプログラムである。
【００４０】
数字演算キー入力プログラム３５３は、数字キー１１、演算キー１６及び機能選択キー１６の操作に応じた数字、文字及び符号等を表示部３３に表示させる数字演算キー入力処理をＣＰＵ３１に実行させるためのプログラムである。
【００４１】
Ｃａｌｌキー入力プログラム３５４は、Ｃａｌｌキー１７の操作に従って、表示部３３に表示されている計算式に対して計算式番号を付与し、入力中の計算式に対して計算式番号を挿入するＣａｌｌキー入力処理をＣＰＵ３１に実行させるためのプログラムである。
【００４２】
実行キー入力プログラム３５５は、計算式に従って計算を行い、計算式と解を計算式記憶領域３４１に記憶させる実行キー入力処理をＣＰＵ３１に実行させるためのプログラムである。
【００４３】
左右キー入力プログラム３５６は、左キー１８０Ｌ又は右キー１８０Ｒの操作に従って、反転カーソル１９２を移動して表示させる左右キー入力処理をＣＰＵ３１に実行させるためのプログラムである。
【００４４】
上下キー入力プログラム３５７は、上キー１８０Ｕ又は下キー１８０Ｄの操作に従って、計算式記憶領域３４１に記憶されている計算式と解を表示部３３に表示させる上下キー入力処理をＣＰＵ３１に実行させるためのプログラムである。
【００４５】
記憶媒体読取部３６は、例えば、メモリカード、ハードディスク等の記憶媒体２００に対してデータの読み書きを行う機能部である。図１では、スロット２０に相当する。
【００４６】
図５は、メインプログラム３５１に従ってＣＰＵ３１が実行するメイン処理の動作を説明するためのフローチャートである。図５を用いて、メイン処理の流れについて説明する。
【００４７】
まず、入力部３２の操作に応じた信号がＣＰＵ３１に入力されると、ＣＰＵ３１は、状態データを“入力”として状態データ記憶領域３４２に記憶する（ステップＡ１）。
【００４８】
次にＣＰＵ３１はＡＣＯＮキー１４が操作されたか否かを判断する（ステップＡ２）。ＡＣＯＮキー１４が操作されたと判断した場合（ステップＡ２；Ｙｅｓ）、ＣＰＵ３１はＡＣＯＮキー入力処理へ処理を移行する（ステップＡ３）。
【００４９】
ＡＣＯＮキー１４は操作されていないと判断した場合（ステップＡ２；Ｎｏ）、ＣＰＵ３１は数字キー１１、演算キー１６又は機能選択キー１６が操作されたか否かを判断する（ステップＡ４）。数字キー１１、演算キー１６又は機能選択キー１６が操作されたと判断した場合（ステップＡ４；Ｙｅｓ）、ＣＰＵ３１は数字演算キー入力処理へ処理を移行する（ステップＡ５）。
【００５０】
数字キー１１、演算キー１６又は機能選択キー１６は操作されていないと判断した場合（ステップＡ４；Ｎｏ）、ＣＰＵ３１はＣａｌｌキー１７が操作されたか否かを判断する（ステップＡ６）。Ｃａｌｌキー１７が操作されたと判断した場合（ステップＡ６；Ｙｅｓ）、ＣＰＵ３１はＣａｌｌキー入力処理へ処理を移行する（ステップＡ７）。
【００５１】
Ｃａｌｌキー１７は操作されていないと判断した場合（ステップＡ６；Ｎｏ）、ＣＰＵ３１は実行キー１３が操作されたか否かを判断する（ステップＡ８）。実行キー１３が操作されたと判断した場合（ステップＡ８；Ｙｅｓ）、ＣＰＵ３１は実行キー入力処理へ処理を移行する（ステップＡ９）。
【００５２】
実行キー１３は操作されていないと判断した場合（ステップＡ８；Ｎｏ）、ＣＰＵ３１は左キー１８０Ｌ又は右キー１８０Ｒが操作されたか否かを判断する（ステップＡ１０）。左キー１８０Ｌ又は右キー１８０Ｒが操作されたと判断した場合（ステップＡ１０；Ｙｅｓ）、ＣＰＵ３１は左右キー入力処理へ処理を移行する（ステップＡ１１）。
【００５３】
左キー１８０Ｌ又は右キー１８０Ｒは操作されていないと判断した場合（ステップＡ１０；Ｎｏ）、ＣＰＵ３１は上キー１８０Ｕ又は下キー１８０Ｄが操作されたか否かを判断する（ステップＡ１２）。上キー１８０Ｕ又は下キー１８０Ｄが操作されたと判断した場合（ステップＡ１２；Ｙｅｓ）、ＣＰＵ３１は上下キー入力処理へ処理を移行する（ステップＡ１３）。
【００５４】
上キー１８０Ｕ又は下キー１８０Ｄは操作されていないと判断した場合（ステップＡ１２；Ｎｏ）、ＣＰＵ３１は他の処理へ処理を移行する（ステップＡ１４）。
【００５５】
ステップＡ３、Ａ５、Ａ７、Ａ９、Ａ１１又はＡ１３の処理が終了後、ＣＰＵ３１は終了操作が行われたか否かを判断する（ステップＡ１５）。終了操作が行われたと判断した場合（ステップＡ１５；Ｙｅｓ）、ＣＰＵ３１はメイン処理を終了する。終了操作が行われていないと判断した場合（ステップＡ１５；Ｎｏ）、ＣＰＵ３１はステップＡ２へ処理を移行する。
【００５６】
図６は、ＡＣＯＮキー入力プログラム３５２に従ってＣＰＵ３１が実行するＡＣＯＮキー入力処理の動作を説明するためのフローチャートである。図６を用いて、ＡＣＯＮキー入力処理の流れについて説明する。
【００５７】
まず、ＣＰＵ３１は計算式記憶領域３４１に記憶されているデータを全てクリアにする（ステップＢ１）。そして状態データ記憶領域３４２に状態データとして“結果”を記憶し、結果数値データを“０”とする。結果数値データとは表示部３３に解として表示されるデータであり、ＲＡＭ３４の作業領域に記憶される。しかし、ステップＢ３において結果数値データに記憶される“０”は計算式の解ではなく、計算式記憶領域３４１に記憶されているデータが存在せず、入力部３２による入力待ち状態であることを示す。そして、ＣＰＵ３１は図９に示す実行キー入力処理のステップＥ５へ処理を移行する。
【００５８】
図７は、数字演算キー入力プログラム３５３に従ってＣＰＵ３１が実行する数字演算キー入力処理の動作を説明するためのフローチャートである。図７を用いて、数字演算キー入力処理の流れについて説明する。
【００５９】
まず、ＣＰＵ３１は状態データ記憶領域３４２に記憶されている状態データが“結果”であるか否かを判断する（ステップＣ１）。“結果”ではないと判断した場合（ステップＣ１；Ｎｏ）、ＣＰＵ３１は操作されたキーに対応して表示データバッファ（不図示）に格納されている下線カーソルの位置に数字、文字又は符号を入力する（ステップＣ２）。表示データバッファとは、ＣＰＵ３１に含まれるキャッシュメモリ等が備えるバッファである。そして、表示データバッファに格納されているデータがＣＰＵ３１によって表示部３３に表示される。また、表示データバッファはＲＡＭ３４が備えてもよい。
【００６０】
一方、状態データ記憶領域３４２に記憶されている状態データが“結果”である場合（ステップＣ１；Ｙｅｓ）、ＣＰＵ３１は操作されたキーが演算キー１２であるか否かを判断する（ステップＣ３）。演算キー１２であると判断した場合（ステップＣ３；Ｙｅｓ）、ＣＰＵ３１は表示部３３の入力行の表示をクリアにし、直前に計算された解と操作されたキーに応じた符号を表示データバッファに入力する（ステップＣ４）。直前に計算された解は、ＲＡＭ３４の作業領域等に記憶されている。
【００６１】
また、操作されたキーが演算キー１２ではないと判断した場合（ステップＣ３；Ｎｏ）、即ち、数字キー１１又は機能選択キー１６が入力された場合、ＣＰＵ３１は表示部３３の入力行の表示をクリアにし、操作されたキーに対応した数字、文字又は符号を表示データバッファに入力する（ステップＣ５）。
【００６２】
次に、ＣＰＵ３１は表示データバッファに格納されているデータに基づいて、表示部３３に数字、文字又は符号を表示させるための表示処理を行う（ステップＣ６）。更にＣＰＵ３１は、状態データを“入力”として状態データ記憶領域３４２に記憶する（ステップＣ７）。そして、図５に示したメイン処理のステップＡ１５へ処理を移行する。
【００６３】
図８は、Ｃａｌｌキー入力プログラム３５４に従ってＣＰＵ３１が実行するＣａｌｌキー入力処理の動作を説明するためのフローチャートである。図８を用いて、Ｃａｌｌキー入力処理の流れについて説明する。
【００６４】
まず、ＣＰＵ３１は表示部３３に表示されている式が計算式記憶領域３４１に記憶されている式であるか否かを判断する（ステップＤ１）。計算式記憶領域３４１に記憶されている式を表示部３３に表示させるには、上キー１８０Ｕ又は下キー１８０Ｄの操作によって実現されるが、詳細は後述する。
【００６５】
表示されている式が計算式記憶領域３４１に記憶されている式ではないと判断した場合（ステップＤ１；Ｎｏ）、ＣＰＵ３１は図５に示したメイン処理のステップＡ１５へ処理を移行する。
【００６６】
一方、計算式記憶領域３４１に記憶されている式であると判断した場合（ステップＤ１；Ｙｅｓ）、ＣＰＵ３１は表示されている式の記憶されている計算式メモリブロックに計算式番号を設定して記憶し、記憶した計算式番号を表示部３３に１秒間表示させる（ステップＤ２）。ここで、表示時間は１秒間でなくてもよく、表示された計算式番号をユーザが視覚的に認識できる程度の時間であればよい。或いは、所定のキー操作によって、計算式番号の表示が解除されるようにしてもよい。
【００６７】
次に、表示中の計算式番号を表示データバッファに格納されている下線カーソルの位置に挿入する（ステップＤ３）。これにより、表示データバッファに格納されている計算式に、計算式番号が挿入されたことになる。即ち、表示データバッファに格納されている計算式は、挿入された計算式番号に対応する計算式を引用した構成となる。そして、ＣＰＵ３１は図５に示したメイン処理のステップＡ１５へ処理を移行する。このＣａｌｌキー入力処理の実行により、入力中の計算式に対して、記憶された別の計算式を簡単に引用することができる。
【００６８】
図９は、実行キー入力プログラム３５５に従ってＣＰＵ３１が実行する実行キー入力処理の動作を説明するためのフローチャートである。図９を用いて、実行キー入力処理の流れについて説明する。
【００６９】
まず、ＣＰＵ３１は表示部３３の入力行に表示されている計算式に従って計算を行う（ステップＥ１）。ここで得られた解は、結果数値データとして記憶される。そして、ＣＰＵ３１は計算式記憶領域３４１に計算式メモリブロックを１つ作成し（ステップＥ２）、表示部３３の入力行に表示されている計算式と、ステップＥ１での計算によって得られた解を作成した計算式メモリブロックに記憶する（ステップＥ３）。そして、状態データとして“結果”を状態データ記憶領域３４２に記憶する（ステップＥ４）。
【００７０】
次に、ＣＰＵ３１は結果数値データとして記憶されている数値を表示部３３に表示する結果表示処理を行う（ステップＥ５）。結果数値データは表示部３３の２行目に右詰めで表示される。そしてＣＰＵ３１は、図５に示したメイン処理のステップＡ１５へ処理を移行する。この実行キー入力処理の実行によって、計算式とその解を組み合わせて計算式記憶領域３４３に記憶させることができる。
【００７１】
図１０は、左右キー入力プログラム３５６に従ってＣＰＵ３１が実行する左右キー入力処理の動作を説明するためのフローチャートである。図１０を用いて、左右キー入力処理の流れについて説明する。
【００７２】
まず、ＣＰＵ３１は、状態データとして“入力”を状態データ記憶領域３４２に記憶する（ステップＦ１）。そしてＣＰＵ３１は、表示データバッファに格納されている計算式の先頭に反転カーソルを設定し、操作されたキー（左キー１８０Ｌ又は右キー１８０Ｒ）に従って、反転カーソルの設定位置を１文字移動させる（ステップＦ２）。
【００７３】
次に、ＣＰＵ３１は表示データバッファに格納されている反転カーソルの設定位置が表示部３３の表示範囲外に位置するか否かを判断する（ステップＦ３）。表示範囲外だと判断した場合（ステップＦ３；Ｙｅｓ）、ＣＰＵ３１は反転カーソルが表示部３３に表示されるように表示中の計算式をスクロールし、表示データバッファに格納されている反転カーソルの設定位置に基づいて反転カーソルを移動して表示する（ステップＦ４）。
【００７４】
一方、反転カーソルの設定位置が表示部３３の表示範囲外ではないと判断した場合（ステップＦ３；Ｎｏ）、ＣＰＵ３１は表示データバッファに格納されている反転カーソルの設定位置に基づいて反転カーソルを移動して表示する（ステップＦ５）。
【００７５】
続いて、ＣＰＵ３１は、表示データバッファに格納されている計算式に含まれる計算式番号を、計算式記憶領域３４１に記憶されている当該計算式番号に対応する解に置き換えて、表示部３３に計算式を表示する（ステップＦ６）。つまり、表示データバッファに格納されている計算式が計算式番号を引用した構成となっていても、当該計算式が表示部３３に表示される際は、引用されている計算式番号に対応する解に置き換えられて表示される。
【００７６】
そして、ＣＰＵ３１は反転カーソルの表示位置に表示されている数字が、計算式番号に対応するか否かを判断する（ステップＦ７）。計算式番号に対応している場合（ステップＦ７；Ｙｅｓ）、ＣＰＵ３１はその計算式番号と、その計算式番号に対応する計算式を表示部３３に表示する（ステップＦ８）。そして、ＣＰＵ３１は図５に示したメイン処理のステップＡ１５へ処理を移行する。
【００７７】
この左右キー入力処理の実行によって、反転カーソルで選択された数字の引用元の計算式及び入力番号を表示させることができる。従って、引用した計算式を簡単に知ることができる。
【００７８】
図１１は、上下キー入力プログラム３５７に従ってＣＰＵ３１が実行する上下キー入力処理の動作を説明するためのフローチャートである。図１１を用いて、上下キー入力処理の流れについて説明する。
【００７９】
まずＣＰＵ３１は、上キー１８０Ｕ又は下キー１８０Ｄの操作が初回入力であるか否かを判断する（ステップＧ１）。初回入力であると判断した場合（ステップＧ１；Ｙｅｓ）、ＣＰＵ３１は上キー１８０Ｕが操作された場合は最初の、下キー１８０Ｄが操作された場合は最後に作成された計算式メモリブロックに記憶されている計算式と解を表示部３３に表示する（ステップＧ２）。
【００８０】
つまり、上キー１８０Ｕが操作された場合は、計算式記憶領域３４１内に最初に作成された計算式メモリブロック（図４では、計算式メモリブロック３４１０）に記憶されている計算式と解を表示部３３に表示させる。また、下キー１８０Ｄが操作された場合は、計算式記憶領域３４１内に最後に作成された計算式メモリブロック（図４では、計算式メモリブロック３４３０）に記憶されている計算式と解を表示部３３に表示させる。
【００８１】
一方、上キー１８０Ｕ又は下キー１８０Ｄの操作が初回入力ではないと判断した場合（ステップＧ１；Ｎｏ）、ＣＰＵ３１は現在指定している計算式メモリブロックに対して、上キー１８０Ｕが操作された場合は１つ前の、下キー１８０Ｄが操作された場合は次の計算式メモリブロックに記憶されている計算式と解を表示部３３に表示する（ステップＧ３）。
【００８２】
つまり、上キー１８０Ｕが操作された場合は、計算式記憶領域３４１内の現在指定されている計算式メモリブロックに対して、１つ前（図４では、１つ下）に位置する計算式メモリブロックに記憶されている計算式と解を表示部３３に表示させる。また、下キー１８０Ｄが操作された場合は、計算式記憶領域３４１内の現在指定されている計算式メモリブロックに対して、次（図４では、１つ上）に位置する計算式メモリブロックに記憶されている計算式と解を表示部３３に表示させる。そして、ＣＰＵ３１は図５に示したメイン処理のステップＡ１５へ処理を移行する。
【００８３】
この上下キー入力処理の実行によって、計算式記憶領域３４１に記憶された計算式及び解を簡単に表示部３３に表示させることができる。
【００８４】
以下、図１２に示した直角三角形の斜辺を求める例題をもとに、入力部３２によるキー操作に従って、表示部３３の表示内容及び計算式記憶領域３４１のデータ構成について図１３〜１６を参照しながら説明する。
【００８５】
まず、第１操作として、数字キー１１及び演算キー１２によって“６”、“−”及び“３”のキーが操作されると、表示画面１９の１行目に“６−３”が表示される（図７の数字演算キー入力処理のステップＣ１〜Ｃ７に該当）。そして実行キー１３が操作されると、２行目に“６−３”の解である“３”が表示される。同時に、計算式記憶領域３４１に計算式メモリブロック３４１０が作成され、計算式として“６−３”とその解として“３”が記憶される（図９の実行キー入力処理のステップＥ１〜Ｅ５に該当）。
【００８６】
次に第２操作として、数字キー１１及び演算キー１２によって“７”、“−”及び“２”のキーが操作されると、表示画面１９の１行目に“７−２”が表示される（図７の数字演算キー入力処理のステップＣ１〜Ｃ７に該当）。そして実行キー１３が操作されると、２行目に“７−２”の解である“５”が表示される。同時に、計算式記憶領域３４１に計算式メモリブロック３４２０が作成され、計算式として“７−２”とその解として“５”が記憶される（図９の実行キー入力処理のステップＥ１〜Ｅ５に該当）。
【００８７】
続いて第３操作として、上キー１８０Ｕが操作されると、上キー１８０Ｕの操作は初回入力であるため、計算式記憶領域３４１に最初に作成された計算式メモリブロック３４１０に記憶されている計算式と解が表示画面１９に表示される（図１１の上下キー入力処理のステップＧ１及びＧ２に該当）。
【００８８】
そして第４操作として、Ｃａｌｌキー１７が操作されると、表示画面１９に表示されている計算式は計算式記憶領域３４１に記憶されている式であるため、計算式番号▲１▼が設定され、計算式メモリブロック３４１０に記憶される。そして計算式と解の表示に加えて、設定された計算式番号▲１▼が表示画面１９の１行目に右詰めで表示される（図８のＣａｌｌキー入力処理のステップＤ１及びＤ２に該当）。
【００８９】
第５操作として、第４操作において表示画面１９に表示された計算式番号が表示データバッファの下線カーソル位置に挿入される。そして、挿入された計算式番号は対応する解に置き換えられて表示画面１９に表示される（図８のＣａｌｌキー入力処理のステップＤ３に該当）。つまり、表示データバッファには“▲１▼”が格納されるが、表示画面１９には計算式番号▲１▼に対応する解である“３”が表示される。
【００９０】
次に第６操作として、機能選択キー１２及び演算キー１２によって“ｘ2”及び“＋”のキーが操作されると、表示画面１９の１行目に“３2＋”が表示される（図７の数字演算キー入力処理のステップＣ１〜Ｃ７に該当）。
【００９１】
続いて第７操作として、下キー１８０Ｄが操作されると、下キー１８０Ｄの操作は初回入力ではないため、第３操作において指定された計算式メモリブロック３４１０の次の入力メモリブロック３４２０に記憶されている計算式と解が表示画面１９に表示される（図１１の上下キー入力処理のステップＧ１及びＧ３に該当）。
【００９２】
そして第８操作として、Ｃａｌｌキー１７が操作されると、表示画面１９に表示されている計算式は計算式記憶領域３４１に記憶されている式であるため、計算式番号▲２▼が設定され、計算式メモリブロック３４２０に記憶される。そして計算式と解の表示に加えて、設定された計算式番号▲２▼が表示画面１９の１行目に右詰めで表示される（図８のＣａｌｌキー入力処理のステップＤ１及びＤ２に該当）。
【００９３】
第９操作として、第８操作において表示画面１９に表示された計算式番号が表示データバッファの下線カーソル位置に挿入される。そして、挿入された計算式番号は対応する解に置き換えられて表示画面１９に表示される（図８のＣａｌｌキー入力処理のステップＤ３に該当）。つまり、表示データバッファには“▲１▼＾２＋▲２▼”が格納されるが、表示画面１９には計算式番号▲１▼及び▲２▼に対応する解を用いて“３2＋５”が表示される。ここで“＾２”は２乗を意味する。
【００９４】
そして第１０操作として、機能選択キー１２によって“ｘ2”のキーが操作されると、第９操作において表示画面１９の１行目に表示されていた“３2＋５”の“５”が２乗され、“３2＋５2”が表示される（図７の数字演算キー入力処理のステップＣ１〜Ｃ７に該当）。そして実行キー１３が操作されると、２行目に“３2＋５2”の解である“３４”が表示される。同時に、計算式記憶領域３４１に計算式メモリブロック３４３０が作成され、計算式 “３2＋５2”とその解“３４”が記憶される（図９の実行キー入力処理のステップＥ１〜Ｅ５に該当）。
【００９５】
続いて第１１操作として、機能選択キー１６によって“√”のキーが操作されると、第１０操作において表示画面１９の１行目に表示されていた“３2＋５2”の平方根が取られ、“√（３2＋５2）”が表示される（図７の数字演算キー入力処理のステップＣ１〜Ｃ７に該当）。そして実行キー１３が操作されると、２行目に“√（３2＋５2）”の解である“５．８３０９５１８９５”が表示される。同時に、計算式記憶領域３４１に計算式メモリブロック３４４０が作成され、計算式“√（３2＋５2）”とその解“５．８３０９５１８９５”が記憶される（図９の実行キー入力処理のステップＥ１〜Ｅ５に該当）。
【００９６】
次に、第１２操作として、右キー１８０Ｒが操作されると、表示画面１９の表示された計算式の先頭に反転カーソル１９２が表示される。更に右キー１８０Ｒが２回操作されると、計算式の先頭から３文字目の文字上に反転カーソル１９２が移動して表示される。そして、表示データバッファに含まれる計算式番号は対応する解に置き換えられて表示画面１９に表示される（図１０の左右キー入力処理のステップＦ１〜Ｆ６に該当）。
【００９７】
また、反転カーソル１９２の表示位置にある計算式の文字が計算式番号に対応している場合は、その計算式番号と計算式番号に対応する計算式が表示される（図１０の左右キー入力処理のステップＦ７及びＦ８に該当）。
【００９８】
そして第１３操作として更に右キー１８０Ｒが３回操作されると、第１２操作において反転カーソル１９２が表示されていた位置より右に３文字移動して表示される（図１０の左右キー入力処理のステップＦ１〜Ｆ６に該当）。また、反転カーソル１９２の表示位置にある計算式の文字が計算式番号に対応している場合は、その計算式番号と計算式番号に対応する計算式が表示される（図１０の左右キー入力処理のステップＦ７及びＦ８に該当）。
【００９９】
つまり、第１２操作の段階において、表示データバッファには“√（▲１▼＾２＋▲２▼＾２）”が格納されている。そして表示画面１９に表示されている計算式において、“３”の位置に反転カーソル１９２が位置している。この“３”は計算式番号▲１▼に対応する解であるため、表示画面１９には計算式番号の“▲１▼”とそれに対応する計算式“６−３”が表示される。
【０１００】
以上に説明したように、計算された計算式とその解を組み合わせて順番に記憶していき、計算式を入力する段階で上キー１８０Ｕ又は下キー１８０Ｄを操作することによって所望の計算式を呼び出して、Ｃａｌｌキー１７を操作することにより、引用したい計算式の内容を確認しながら新しい計算式に引用することができる。つまり、ユーザは、予め記憶された値を計算式に引用する場合、引用する値が本来どのような計算式によって導出されたのかを確認することができる。
【０１０１】
更に、記憶された計算式と解に計算式番号を設定し、その計算式番号を用いて新しい計算式に引用することにより、左キー１８０Ｌ又は右キー１８０Ｒを操作することによって引用先の計算式を１文字ずつ選択した際に、引用元の計算式番号と計算式を表示させることができる。従って、引用元の計算式番号や計算式の内容を別紙に記録しておく必要がなく、使い勝手のよい関数電卓を実現することができる。
【０１０２】
以上、本発明の実施の形態を説明したが、本発明は上述の実施の形態についてのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【０１０３】
例えば、引用元の計算式を変更すると、引用先の計算式が自動的に再計算され、新しい解が表示されるようにしてもよい。具体的には、図１６の第１３操作において、計算式“√（３2＋５2）”は、計算式記憶領域３４１には“√（▲１▼＾２＋▲２▼＾２）”として記憶されている。つまり、計算式番号▲１▼と計算式番号▲２▼に対応する計算式が引用された構成となっている。ここで、計算式番号▲１▼に対応する計算式“６−３”を“６−４”に変更すると、この計算式の解は“２”となり、計算式“√（３2＋５2）”のうち、計算式番号▲１▼に対応する数が自動的に新しい解に変更され（つまり、“√（２2＋５2）”となり）、変更された計算式の新しい解が表示されるようにしてもよい。
【０１０４】
【発明の効果】
請求項１及び６に記載の発明によれば、式記憶手段に記憶された計算結果を入力中の計算式に挿入する際に、その計算結果に対応する計算式を表示させることができる。従って、先に入力した計算式の計算結果を入力中の計算式に適切に利用することができる。
【０１０５】
請求項２に記載の発明によれば、入力中の計算式に挿入された計算結果に対応する計算式を簡単に表示させることができる。従って、入力中の計算式に先の計算結果を挿入した後でも、その計算結果に対応する計算式を確認できる。即ち、先に入力した計算式の計算結果を入力中の計算式に適切に利用することができる。
【０１０６】
請求項３及び４に記載の発明によれば、計算式と計算結果を式記憶手段に順番に記憶し、記憶された計算式と計算結果を順番に表示制御させることにより、入力中の計算式に記憶された計算結果を挿入する際に、複数ある計算結果を順次表示させることができる。また、計算された計算式の履歴を順番に確認することができ、例えば問題を解いた後に計算過程を再度学習することができる。
【０１０７】
請求項５に記載の発明によれば、紙面上で問題を解いた際の計算過程において、途中の式に式番号を付与した場合、同様の式番号を計算式に付与することができる。更に、指定手段によって指定された入力中の計算式の一部分が挿入手段によって挿入された計算結果に対応する場合、その計算結果に対応する計算式と式番号が表示されるため、挿入された計算結果に対応する計算式と式番号を簡単に把握することができる。
【図面の簡単な説明】
【図１】関数電卓の外観の一例を示した図。
【図２】表示画面の表示構成を説明する為の図。
【図３】関数電卓の構成を示すブロック図。
【図４】計算式記憶領域のデータ構成を示す図。
【図５】メイン処理の動作を説明するためのフローチャート。
【図６】ＡＣＯＮキー入力処理の動作を説明するためのフローチャート。
【図７】数字演算キー入力処理の動作を説明するためのフローチャート。
【図８】Ｃａｌｌキー入力処理の動作を説明するためのフローチャート。
【図９】実行キー入力処理の動作を説明するためのフローチャート。
【図１０】左右キー入力処理の動作を説明するためのフローチャート。
【図１１】上下キー入力処理の動作を説明するためのフローチャート。
【図１２】直角三角形の斜辺を求める例題を示す図。
【図１３】キー操作に基づいた表示部の表示内容及び計算式記憶領域のデータ構成を説明するための図。
【図１４】図１３に続く、キー操作に基づいた表示部の表示内容及び計算式記憶領域のデータ構成を説明するための図。
【図１５】図１４に続く、キー操作に基づいた表示部の表示内容及び計算式記憶領域のデータ構成を説明するための図。
【図１６】図１５に続く、キー操作に基づいた表示部の表示内容及び計算式記憶領域のデータ構成を説明するための図。
【符号の説明】
１    関数電卓
１１    数字キー
１２    四則演算キー
１３    実行キー
１４    ＡＣＯＮキー
１５    ＤＥＬキー
１６    機能選択キー
１７    Ｃａｌｌキー
１８    方向キー
１９    表示画面
２０    スロット
３１    ＣＰＵ
３２    入力部
３３    表示部
３４    ＲＡＭ
３４１    計算式記憶領域
３４２    状態データ記憶領域
３５    ＲＯＭ
３５１    メインプログラム
３５２    ＡＣＯＮキー入力プログラム
３５３    数字演算キー入力プログラム
３５４    Ｃａｌｌキー入力プログラム
３５５    実行キー入力プログラム
３５６    左右キー入力プログラム
３５７    上下キー入力プログラム
３６    記憶媒体読取部
２００  記憶媒体
【図１】
2004206405.tif 000003
【図２】
2004206405.tif 000004
【図３】
2004206405.tif 000005
【図４】
2004206405.tif 000006
【図５】
2004206405.tif 000007
【図６】
2004206405.tif 000008
【図７】
2004206405.tif 000009
【図８】
2004206405.tif 000010
【図９】
2004206405.tif 000011
【図１０】
2004206405.tif 000012
【図１１】
2004206405.tif 000013
【図１２】
2004206405.tif 000014
【図１３】
2004206405.tif 000015
【図１４】
2004206405.tif 000016
【図１５】
2004206405.tif 000017
【図１６】
2004206405.tif 000018