JP5488071B2 - 電子式計算機およびプログラム - Google Patents

電子式計算機およびプログラム Download PDF

Info

Publication number
JP5488071B2
JP5488071B2 JP2010056326A JP2010056326A JP5488071B2 JP 5488071 B2 JP5488071 B2 JP 5488071B2 JP 2010056326 A JP2010056326 A JP 2010056326A JP 2010056326 A JP2010056326 A JP 2010056326A JP 5488071 B2 JP5488071 B2 JP 5488071B2
Authority
JP
Japan
Prior art keywords
cursor
formula
mathematical expression
input
mathematical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010056326A
Other languages
English (en)
Other versions
JP2011191919A (ja
Inventor
博明 吉澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2010056326A priority Critical patent/JP5488071B2/ja
Publication of JP2011191919A publication Critical patent/JP2011191919A/ja
Application granted granted Critical
Publication of JP5488071B2 publication Critical patent/JP5488071B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Calculators And Similar Devices (AREA)

Description

本発明は、入力された数式や計算結果を教科書通りの自然な表記形態にして表示(自然表示)する電子式計算機およびその制御プログラムに関する。
従来、電卓と称する電子式計算機において、ユーザによってキー入力された計算式やその計算結果の表記形態は、1行にして表示されるものが多かった。
例えば平方根の計算式を入力する場合、ルート「√」の掛かる範囲を自然表示できないために、当該ルート記号「√」と共に小括弧や中括弧などの記号が組み合わされて入力され、例えば「√(2)」のように1行表示されていた。
また、例えば分数を含む計算式の場合、当該分数記号(割線)を挟んだ分子と分母を上下方向に自然表示できないために、通常分数である「B分のA」は[A」B]、帯分数である「AとC分のB」は[A」B」C]などと、1行表示されていた。
また、例えばべき数を含む計算式の場合も同様に、べき数を当該べき数が掛かる数字や文字の右上に上付文字として自然表示できないために、当該べき数の前にそれがべき数であることを示す「∧」記号が組み合わされて、例えば「x∧2」のように1行表示されていた。
そこで、平方根の計算式の場合には、そのルート記号「√」の横線を当該ルートの掛かる範囲の数字や文字の上まで延長し、また、分数の計算式の場合には、その分子と分母とを割線を境界に上下に配置し、また、べき数を含む計算式の場合には、そのべき数を当該べき数が掛かる数字や文字の右上に上付文字として配置し、それぞれ教科書に記載されるような自然な形式で表示するようにした、ドットマトリクス型表示画面を備えた電卓が考えられている(例えば、特許文献1参照。)。
なお、このように数式を自然な形式として表現するのに上下方向に数字・文字を重ねたりシフトしたりして表示することを2D(dimension)表示と称し、また、この2D表示が必要になるルート「√」、分数「a/b」、べき数「m」などの関数を2D関数と称する。
そして、前記2D関数の掛かる範囲がユーザ所望の範囲で入力されるようにした数式自然表示機能を有する関数電卓も考えられている(例えば、特許文献2、特許文献3参照。)。
特開2006−004326号公報 特開2005−135084号公報 特開2009−199174号公報
前記従来の数式自然表示が可能な関数電卓において、2D関数を含む数式の入力中に、その2D関数を一旦区切り分割して入力しなければならない数式部分を、キー入力を誤って先に出る2D関数の範囲内に入力してしまうことがある。
具体的には、例えば「√2+√3」のように、前出の平方根「√2」と、これとは別の後出の平方根「√3」とを加減乗除する二項関数として入力したい場合、正しいキー操作の手順は、前出の平方根の入力開始を指示する「√」キー→「2」→平方根の入力終了を指示する「EXIT」→「+」→後出の平方根の入力開始を指示する「√」キー→「3」となる。
しかしながら、数式自然表示が可能であるが故に、手早く式を入力した場合に、つい「√」→「2」→「+」→「3」と誤って、1つ平方根で括られる式「√(2×3)」を入力しがちである。
このような場合、従来の関数電卓では、誤って入力した数式部分の直前の位置まで「DEL」(削除)キーを操作しながらカーソルを戻し、改めて正しい入力操作を行わなければならず、非常に面倒な問題がある。
本発明は、このような課題に鑑みなされたもので、例えば1つの2D関数の範囲内で誤って連続入力してしまった文字列からなる数式を、簡単な操作で所望の数式に修正することが可能になる電子式計算機およびその制御プログラムを提供することを目的とする。
請求項1に記載の電子式計算機は、数式を自然表示する電子式計算機であって、2次元関数を含む数式を入力する数式入力手段と、この数式入力手段により入力された数式を表示部に表示させる数式表示制御手段と、この数式表示制御手段により表示された数式に対して、カーソルをユーザ操作に応じ移動可能にして表示させるカーソル表示制御手段と、ユーザ操作に応じて、前記数式の分割を指示する分割指示手段と、この分割指示手段により前記数式の分割が指示された場合に、前記カーソル表示制御手段により表示されたカーソルが前記数式表示制御手段により表示された数式の中の特定の演算子の位置にあるか否かを判断する分割位置判断手段と、この分割位置判断手段により前記カーソルが前記数式の中の特定の演算子の位置にあると判断された場合に、当該カーソルより前の数式部分と当該カーソルから後の数式部分とを分割し、当該カーソルが位置する特定の演算子により結合して修正する数式修正手段と、を備えたことを特徴としている。
請求項2に記載の電子式計算機は、前記請求項1に記載の電子式計算機において、前記2次元関数は平方根であって、前記数式修正手段は、1つの平方根の範囲内で入力された数式を対象に、前記カーソルより前の平方根の範囲の数式部分と当該カーソルから後の平方根の範囲の数式部分とに分割して修正することを特徴としている。
請求項3に記載の電子式計算機は、前記請求項1に記載の電子式計算機において、前記2次元関数は分数であって、前記数式修正手段は、1つの分数の範囲内で入力された数式を対象に、前記カーソルが位置する分母部分の当該カーソルより前の分数の範囲の数式部分と当該カーソルから後の整数の範囲の数式部分とに分割して修正することを特徴としている。
請求項4に記載のプログラムは、数式を自然表示する電子式計算機のコンピュータを制御するためのプログラムであって、前記コンピュータを、ユーザ操作に応じて、2次元関数を含む数式を入力する数式入力手段、この数式入力手段により入力された数式を表示部に表示させる数式表示制御手段、この数式表示制御手段により表示された数式に対して、カーソルをユーザ操作に応じ移動可能にして表示させるカーソル表示制御手段、ユーザ操作に応じて、前記数式の分割を指示する分割指示手段、この分割指示手段により前記数式の分割が指示された場合に、前記カーソル表示制御手段により表示されたカーソルが前記数式表示制御手段により表示された数式の中の特定の演算子の位置にあるか否かを判断する分割位置判断手段、この分割位置判断手段により前記カーソルが前記数式の中の特定の演算子の位置にあると判断された場合に、当該カーソルより前の数式部分と当該カーソルから後の数式部分とを分割し、当該カーソルが位置する特定の演算子により結合して修正する数式修正手段、として機能させることを特徴としている。
本発明によれば、例えば1つの2D関数の範囲内で誤って連続入力してしまった文字列からなる数式を、簡単な操作で所望の数式に修正することが可能になる電子式計算機およびその制御プログラムを提供できる。
本発明の実施形態に係る数式自然表示機能を有する電子式計算機(関数電卓)10の外観構成を示す正面図。 前記関数電卓10の電子回路の構成を示すブロック図。 前記関数電卓10による数式入力・計算処理を示すフローチャート。 前記関数電卓10の数式入力・計算処理に伴うCUT処理を示すフローチャート。 前記関数電卓10の数式入力・計算処理でのCUT処理に伴う数式の修正表示例(その1)を示す図。 前記図5における数式の修正表示例(その1)に対応する入力式バッファ27bでのキーコードの記憶変化を示す図。 前記図5における数式CUT処理に伴う数式修正表示例(その1)を応用した学習の有効利用場面を示す図。 前記関数電卓10の数式入力・計算処理でのCUT処理に伴う数式の修正表示例(その2)を示す図である。 前記図8における数式の修正表示例(その2)に対応する入力式バッファ27bでのキーコードの記憶変化を示す図。 前記関数電卓10の数式入力・計算処理でのCUT処理に伴う数式の修正表示例(その3)を示す図。 前記図10における数式の修正表示例(その3)に対応する入力式バッファ27bでのキーコードの記憶変化を示す図。
以下図面により本発明の実施の形態について説明する。
図1は、本発明の実施形態に係る数式自然表示機能を有する電子式計算機(関数電卓)10の外観構成を示す正面図である。
この関数電卓10は、その携帯性の必要からユーザが片手で十分把持し片手で操作可能な小型サイズからなり、この関数電卓10の本体正面にはキー入力部11および表示部16が設けられる。
キー入力部11には、数値や数式を入力したり計算の実行を指示したりするための数値・演算記号キー群12、各種の関数を入力したりメモリ機能を立ち上げたりするための関数機能キー群13、各種動作モードのメニュー画面を表示させたり動作モードの設定を指示したりするためのモード設定キー群14、表示部16に表示されたカーソルCuの移動操作やデータ項目の選択操作などを行うためのカーソルキー15、表示部16の下端に沿ってメニュー表示される各種の機能を選択的に指定するためのファンクションキーF1〜F4が備えられる。
前記数値・演算記号キー群12としては、「0」〜「9」(数値)キー、「+」「−」「×」「÷」(算術記号)キー、「Exp」(指数)キー、「EXE」(実行)キー、「AC」(クリア)キーなどが配列される。
前記関数機能キー群13としては、「√」(ルート)キー、「a/b」(分数)キー、「sin」(サイン)キー、「nPr」(順列関数)キー、「M+」(メモリプラス)キーなどが配列される。
前記モード設定キー群14としては、「Menu」(メニュー)キー、「CUT」(分割)キー、「Grph」(グラフ)キー、「Trac」(グラフトレース)キーなどが配列される。ここで、「CUT」キーは、2D関数の範囲内で誤入力された文字を含む数式を分割された数式に修正するためのキーである。
なお、本実施形態において、「√」(ルート)、「a/b」(分数)、「Exp」(べき関数)、「nPr」(順列関数)などのように、1行表示では特殊な記号を用いての表示になり、教科書記載の自然表示では数字や関数記号を2次元に展開して上下方向に重なった表示になる関数のことを2D(dimension)関数と称する。
前記表示部16は、ドットマトリクス型の液晶表示ユニットからなる。
図2は、前記関数電卓10の電子回路の構成を示すブロック図である。
この関数電卓10は、コンピュータである制御部(CPU)21を備えている。
制御部(CPU)21は、記憶装置(フラッシュROM)22に予め記憶されているシステムプログラム、あるいはメモリカードなどの外部記憶媒体23から記憶媒体読み書き部24を介して記憶装置22に読み込まれた計算機制御プログラム、あるいは通信ネットワークN上のWebサーバ(プログラムサーバ)25から通信制御部26を介してダウンロードされ前記記憶装置22に読み込まれた計算機制御プログラムに従い、RAM27を作業用メモリとして回路各部の動作を制御する。そして、前記記憶装置22に予め記憶されたシステムプログラムや計算機制御プログラムは、キー入力部11からのキー入力信号に応じて起動される。
前記制御部(CPU)21には、前記記憶装置22、記憶媒体読み書き部24、通信制御部26、RAM27、キー入力部11が接続される他に、液晶表示部(LCD)16が接続される。
RAM27には、表示データメモリ27a、入力式バッファ27b、カーソルポインタメモリ27c、数式記憶エリア27d、待避バッファ27eなどが確保される。
表示データメモリ27aには、前記表示部16に表示させる数式のデータやその演算結果のデータなどが、前記表示部16の表示領域に相当するビットマップデータに展開されて記憶される。
入力式バッファ27b(図6、図9、図11参照)には、前記キー入力部11によりキー入力された式を構成するキーコードのデータが順次記憶される。例えば数値キーは数字を示すコードで、「√」「a/b」「sin」などの関数キーはその関数を示すコードで、「+」「−」「×」「÷」などの算術記号キーはその算術記号を示すコードで記憶される。また、この入力式バッファ27bには、キーに対応するコードの他に制御コードも記憶される。例えば、図6、図9、図11に示されるコードデータのうち、「EX」は前方にある2D関数(「√」や「a/b」)の取り込み範囲の終了を示すコード、「EZ」は数式の終了を示すコードである。
カーソルポインタメモリ27c(図6、図9、図11参照)には、前記入力式バッファ27bにキーコードデータとして記憶されると共に前記表示部16に表示されたキー入力データを対象にして、カーソルキー15の操作により移動表示されるカーソルCuが位置するところを示すポインタデータPが記憶される。
数式記憶エリア27dには、前記入力式バッファ27bに入力されて生成された数式のデータが記憶される。
待避バッファ27eには、数式の入力に伴い「CUT」(分割)キーが操作された際に、前記入力式バッファ27bにおいてカーソルCuで指示されたポインタPの位置に存在する数式のコードデータがコピーされて記憶される。
次に、前記構成の数式自然表示機能を有する電子式計算機(関数電卓)10の数式入力・計算機能について説明する。
図3は、前記関数電卓10による数式入力・計算処理を示すフローチャートである。
まず、キー入力部11においてユーザにより所望のキーが操作されると、そのキーデータがCPU21に読み込まれる(ステップS1)。そして、数字・文字・記号のデータが入力された場合には(ステップS2(No)→S4(Yes))、式入力処理が行われ、当該入力された数字・文字・記号のデータは、そのキーコードとして入力式バッファ26に順次記憶されると共に、この入力式データに基づいた数式が表示部16に表示される(ステップS5)。
また、カーソルキー15が入力された場合には(ステップS1,S2(Yes))、当該入力されたカーソルキー15が示す方向にカーソルポインタメモリ27cに記憶されるポインタデータPが移動され、前記表示部16に表示されているカーソルCuが移動表示される(ステップS3)。
またキー入力部11において「CUT」(分割)キーが操作された場合は(ステップS6(Yes))、CUT処理モードになり、詳細を後述するCUT処理が実行される(ステップSA)。
一方、前記ステップS5における式入力処理に従いユーザ任意の数式が入力表示された状態で「EXE」(実行)キーが操作されたと判断されると(ステップS7(Yes))、入力式バッファ27bに記憶されたキーコードデータが読み出されて演算対象となる数式として問題がないかチェックされる(ステップS8)。仮にこのステップS8の数式チェックで演算できない問題があると判断されたならばシンタックス・エラーの表示がなされる。前記入力された数式に問題がなければ当該数式は数式記憶エリア27dに記憶されて演算処理が実行され(ステップS9)、その演算結果のデータが表示部16に表示される(ステップS10)。
例えば前記式入力処理により数式の入力と表示が行われ(ステップS4,S5)、当該数式中のユーザ所望の位置にカーソルCuが移動表示された状態で(ステップS2,S3)、「CUT」(分割)キーが操作された場合には(ステップS6(Yes))、CPU21の動作モードがCUT処理モードに設定され、図4におけるCUT処理に移行される(ステップSB)。
図4は、前記関数電卓10の数式入力・計算処理に伴うCUT処理を示すフローチャートである。
図5は、前記関数電卓10の数式入力・計算処理でのCUT処理に伴う数式の修正表示例(その1)を示す図である。
図6は、前記図5における数式の修正表示例(その1)に対応する入力式バッファ27bでのキーコードの記憶変化を示す図である。
例えば前記式入力処理により、正しくは2つの平方根の乗算式「√2×√3」を入力したいところ、図5(A)に示すように、誤って1つの平方根からなる乗算式「√(2×3)」を入力してしまった場合に(ステップS4,S5)、前記平方根の掛かる範囲を分割するべく、図5(B)に示すように、1つ目の平方根の範囲の終端文字「2」の直後、つまり乗算子「×」の位置までカーソルCuを移動させ(ステップS2,S3)、「CUT」(分割)キーを押下する(ステップS6(Yes))。
このとき、図6(A)に示すように、入力式バッファ27bに記憶される数式「√(2×3)」のコードデータの中の演算子コード「×」の位置にカーソルポインタデータPが移動される。
すると、図4におけるCUT処理が起動され、先ず、カーソルCuの位置でCUT(分割)可能か否かが、前記カーソルポインタデータPが位置するコードデータが2D関数の範囲内での演算子コードや関数コードなどの特定の演算子コードの位置にあるか否かにより判断される(ステップA1)。
ここで、前記カーソルポインタデータPが位置する入力式のコードデータが、2D関数「√」の範囲内で演算子コード「×」の位置にあることで、カーソルCuの位置でCUT(分割)可能であると判断されると(ステップA1(Yes))、当該ポインタデータPの位置するコード「×」が待避バッファ27eに待避されて記憶される(ステップA2)。
そして、入力式バッファ27bのカーソルポインタデータPの位置よりも左側(前方)の数式部分「√」「2」に続けて、図6(B)に示すように、終了コード「EX」が挿入され、1つ目の平方根の掛かる範囲「√2」の終端がマーキングされる(ステップA3)。
すると、前記終端マーキングされた1つ目の平方根の掛かる数式部分「√」「2」「EX」に続けて、前記待避バッファ27eに待避された乗算子コード「×」が挿入されて復帰され(ステップA4)、当該復帰されたコード(分割後部の始点となるコード)が加減乗除(+−×÷)の二項関数であるか否か判断される(ステップA5)。
このとき前記カーソルポインタデータPは、待避バッファ27eから復帰された乗算子コード「×」を指示している。
そして、当該ポインタデータPにより指示された乗算子コード「×」について、二項関数であると判断されると(ステップA5(Yes))、当該二項関数「×」が分割後部の始点とされることなく取り出され(ステップA6)、カーソルCuの右側(後方)に存在する数式部分について前記1つ目の2D関数(平方根)と同じ関数で終端マーキング処理される(ステップA7)。
具体的には、前記二項関数「×」を含まずにカーソルポインタデータPよりも右側(後方)に存在する数式部分「3」「EX」「EZ」を対象に、前記1つ目の2D関数(平方根)と同じ2D関数「√」が挿入され、前記二項関数「×」で結合された2つ目の平方根の掛かる数式部分「√」「3」「EX」「EZ」に分割される(ステップA5〜A7)。
これにより、図6(B)に示すように、入力式バッファ27bには、1つ目の平方根の式「√2」から2つ目の平方根の式「√3」を分割して乗算した数式のコードデータが生成され、図5(C)に示すように、表示部16には、当初入力したかった2つの平方根の乗算式「√2×√3」として表示される。
この後、図5(D)に示すように、「EXE」(実行)キーが操作されると(ステップS7(Yes))、前記入力式バッファ27bに修正されて記憶されたキーコードデータが読み出されて数式チェック処理(ステップS8)、および演算処理が実行され(ステップS9)、その演算結果のデータ「√6」が表示部16に表示される(ステップS10)。
したがって、前記構成の数式自然表示機能を有する電子式計算機(関数電卓)10の数式入力・計算機能に伴うCUT処理によれば、任意の数式入力操作「√」「2」「×」「3」に伴い入力式バッファ27bに入力され表示部16に表示された数式「√(2×3)」について、カーソルCuを前記数式中の乗算子コード「×」の位置に移動させて「CUT」(分割)キーを操作すると、カーソルポインタデータPにて指示された前記数式中のコード「×」が演算子であることでCUT(分割)可能と判断される。そして、前記カーソルポインタPより左側(前方)の数式部分「√2」と右側(後方)の数式部分「√3」とに分割され、前記分割を指示した数式中の乗算子コード「×」により結合された平方根同士の乗算式「√2×√3」に修正されて表示される。
このため、1つの2D関数「√」の範囲内で誤って連続入力してしまった文字列からなる数式「√(2×3)」を、簡単な操作で所望の数式「√2×√3」に修正することが可能になる。
図7は、前記図5における数式CUT処理に伴う数式修正表示例(その1)を応用した学習の有効利用場面を示す図である。
これによれば、例えば図7(A1)(A2)に示すように、1つの平方根の範囲で括られた乗算式「√(2×3)」を、2つの平方根に分割した乗算式「√2×√3」に修正した場合には、当該数式を修正する前後においてその演算結果に差異が無いことが分かる。
一方、例えば図7(B1)(B2)に示すように、1つの平方根の範囲で括られた加算式「√(2+3)」を、2つの平方根に分割した加算式「√2+√3」に修正した場合には、数式を修正する前後においてその演算結果に差異が有ることが分かる。
よって、1つの2D関数の掛かる範囲内に二項関数の演算子を含んだ数式について、当該二項関数の演算子を分割の基準位置として、同2D関数の掛かる前方の数式部分と同2D関数の掛かる後方の数式部分とに分割修正した場合に、その各数式部分を結合する演算子が、乗(除)算子か加(減)算子かの種類によって、数式の分割前後で演算結果が同じになったり異なったりすることを有効に学習することができる。
図8は、前記関数電卓10の数式入力・計算処理でのCUT処理に伴う数式の修正表示例(その2)を示す図である。
図9は、前記図8における数式の修正表示例(その2)に対応する入力式バッファ27bでのキーコードの記憶変化を示す図である。
例えば前記式入力処理により、正しくは2つの平方根の乗算式「√2√{sin(30)×6}」を入力したいところ、図8(A)に示すように、誤って1つの平方根からなる乗算式「√{2sin(30)×6}」を入力してしまった場合に(ステップS4,S5)、前記平方根の掛かる範囲を分割するべく、1つ目の平方根の範囲の終端文字「2」の直後、つまり「sin」の位置までカーソルCuを移動させ(ステップS2,S3)、「CUT」(分割)キーを押下する(ステップS6(Yes))。
このとき、図9(A)に示すように、入力式バッファ27bに記憶される数式「√{2sin(30)×6}」のコードデータの中の三角関数コード「sin」の位置にカーソルポインタデータPが移動される。
すると、図4におけるCUT処理が起動され、先ず、カーソルCuの位置でCUT(分割)可能か否かが、前記ポインタデータPが位置するコードデータが2D関数の範囲内での演算子コードや関数コードなどの特定の演算子コードの位置にあるか否かにより判断される(ステップA1)。
ここで、前記ポインタデータPが位置する入力式のコードデータが、2D関数「√」の範囲内で関数コード「sin」の位置にあることで、カーソルCuの位置でCUT(分割)可能であると判断されると(ステップA1(Yes))、当該カーソルポインタPの位置するコード「sin」が待避バッファ27eに待避されて記憶される(ステップA2)。
そして、入力式バッファ27bのカーソルポインタデータPの位置よりも左側(前方)の数式部分「√」「2」に続けて、図9(B)に示すように、終了コード「EX」が挿入され、1つ目の平方根の掛かる範囲「√2」の終端がマーキングされる(ステップA3)。
すると、前記終端マーキングされた1つ目の平方根の掛かる数式部分「√」「2」「EX」に続けて、前記待避バッファ27eに待避されたコード「sin」が挿入されて復帰され(ステップA4)、当該復帰されたコード(分割後部の始点となるコード)が加減乗除(+−×÷)の二項関数であるか否か判断される(ステップA5)。
このとき前記カーソルポインタデータPは、待避バッファ27eから復帰されたコード「sin」を指示している。
そして、当該ポインタデータPにより指示されたコード「sin」について、二項関数でないと判断されると(ステップA5(No))、カーソルCuから右側(後方)に存在する数式部分について前記1つ目の2D関数(平方根)と同じ関数で終端マーキング処理される(ステップA7)。
具体的には、前記分割開始の始点とした関数コード「sin」を含んでポインタデータPから右側(後方)に存在する数式部分「sin」「(30)」「×」「6」「EX」「EZ」を対象に、前記1つ目の2D関数(平方根)と同じ2D関数「√」が挿入され、2つ目の平方根の掛かる数式部分「sin」「(30)」「×」「6」「EX」「EZ」に分割される(ステップA5(No)→A7)。
これにより、図9(B)に示すように、入力式バッファ27bには、1つ目の平方根の式「√2」から2つ目の平方根の式「√{sin(30)×6}」を分割した数式のコードデータが生成され、図8(B)に示すように、表示部16には、当初入力したかった2つの平方根の連続式「√2√{sin(30)×6}」として表示される。
この後、「EXE」(実行)キーが操作されると(ステップS7(Yes))、前記入力式バッファ27bに修正されて記憶されたキーコードデータが読み出されて数式チェック処理(ステップS8)、および演算処理が実行され(ステップS9)、その演算結果のデータ「√6」が表示部16に表示される(ステップS10)。
したがって、このような場合にも、1つの2D関数「√」の範囲内で誤って連続入力してしまった文字列からなる数式「√{2sin(30)×6}」を、簡単な操作で所望の数式「√2√{sin(30)×6}」に修正することが可能になる。
図10は、前記関数電卓10の数式入力・計算処理でのCUT処理に伴う数式の修正表示例(その3)を示す図である。
図11は、前記図10における数式の修正表示例(その3)に対応する入力式バッファ27bでのキーコードの記憶変化を示す図である。
例えば前記式入力処理により、正しくは分数と整数との加算式「(1/2)+3」を入力したいところ、図10(A)に示すように、誤って1つの分数式「1/(2+3)」として入力してしまった場合に(ステップS4,S5)、その分母「2+3」にある「+3」以降を分割するべく、当該分母として残したい「2」の直後、つまり「+」の位置までカーソルCuを移動させ(ステップS2,S3)、「CUT」(分割)キーを押下する(ステップS6(Yes))。
このとき、図11(A)に示すように、入力式バッファ27bに記憶される数式「a/b」「(1)/(2+3)」「EX」「EZ」のコードデータの中の演算子コード「+」の位置にカーソルポインタデータPが移動される。
すると、図4におけるCUT処理が起動され、先ず、カーソルCuの位置でCUT(分割)可能か否かが、前記ポインタデータPが位置するコードデータが2D関数の範囲内での演算子コードや関数コードなどの特定の演算子の位置にあるか否かにより判断される(ステップA1)。
ここで、前記カーソルポインタデータPが位置する入力式のコードデータが、2D関数「a/b」の範囲内で演算子コード「+」の位置にあることで、カーソルCuの位置でCUT(分割)可能であると判断されると(ステップA1(Yes))、当該ポインタデータPの位置するコード「+」が待避バッファ27eに待避されて記憶される(ステップA2)。
そして、入力式バッファ27bのカーソルポインタデータPの位置よりも左側(前方)の数式部分「a/b」「(1)/(2)」に続けて、図11(B)に示すように、終了コード「EX」が挿入され、分数の掛かる範囲の終端がマーキングされる(ステップA3)。
すると、前記終端マーキングされた分数部分「a/b」「(1)/(2)」「EX」に続けて、前記待避バッファ27eに待避されたコード「+」が挿入されて復帰され(ステップA4)、当該復帰されたコード(分割後部の始点となるコード)が加減乗除(+−×÷)の二項関数であるか否か判断される(ステップA5)。
このとき前記カーソルポインタデータPは、待避バッファ27eから復帰されたコード「+」を指示している。
そして、当該ポインタデータPにより指示されたコード「+」について、二項関数であると判断されると(ステップA5(Yes))、当該二項関数「+」が一旦取り出され(ステップA6)、カーソルCuの右側(後方)に存在する数式部分について終端マーキング処理される(ステップA7)。
具体的には、前記カーソルポインタデータPよりも右側(後方)に存在する数式部分「3」「EZ」を対象に、前記ステップA6にて取り出された二項関数「+」が挿入され、後方の数式部分「+」「3」「EZ」に分割される(ステップA5〜A7)。
これにより、図11(B)に示すように、入力式バッファ27bには、前方の分数式「1/2」と後方の整数「3」とを分割して加算した数式のコードデータが生成され、表示部16には、当初入力したかった分数と整数との加算式「(1/2)+3」として表示される。
したがって、このような場合にも、1つの2D関数「a/b」の範囲内で誤って連続入力してしまった文字列からなる数式「1/(2+3)」を、簡単な操作で所望の数式「(1/2)+3」に修正することが可能になる。
なお、前記各実施形態(その1〜その3)において記載した関数電卓(電子式計算機)10による各動作手法、すなわち、図3のフローチャートに示す数式入力・計算処理、図4のフローチャートに示す前記数式入力・計算処理に伴うCUT処理などの各手法は、コンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記憶媒体(23)に格納して配布することができる。そして、関数電卓(電子式計算機)10のコンピュータ(21)は、この外部記憶媒体(23)に記憶されたプログラムを記憶装置(22)(27)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記実施形態において説明した2D関数を含む数式の簡単分割修正機能を実現し、前述した手法による同様の処理を実行することができる。
また、前記手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク(公衆回線)N上を伝送させることができ、この通信ネットワークNに接続された通信装置(26)によって前記プログラムデータを関数電卓(電子式計算機)10のコンピュータ(21)に取り込み、前述した2D関数を含む数式の簡単分割修正機能を実現することもできる。
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
10 …関数電卓(電子式計算機)
11 …キー入力部
12 …数字・演算記号キー群
13 …関数機能キー群
14 …モード設定キー群
15 …カーソルキー
16 …ドットマトリクス型液晶表示部
21 …制御部(CPU)
22 …記憶装置
23 …外部記憶媒体
24 …記憶媒体読み書き部
25 …Webサーバ
26 …通信制御部
27 …RAM
27a…表示データメモリ
27b…入力式バッファ
27c…カーソルポインタメモリ
27d…数式記憶エリア
27e…待避バッファ
N …通信ネットワーク
Cu …カーソル
P …カーソルポインタデータ

Claims (4)

  1. 数式を自然表示する電子式計算機であって、
    2次元関数を含む数式を入力する数式入力手段と、
    この数式入力手段により入力された数式を表示部に表示させる数式表示制御手段と、
    この数式表示制御手段により表示された数式に対して、カーソルをユーザ操作に応じ移動可能にして表示させるカーソル表示制御手段と、
    ユーザ操作に応じて、前記数式の分割を指示する分割指示手段と、
    この分割指示手段により前記数式の分割が指示された場合に、前記カーソル表示制御手段により表示されたカーソルが前記数式表示制御手段により表示された数式の中の特定の演算子の位置にあるか否かを判断する分割位置判断手段と、
    この分割位置判断手段により前記カーソルが前記数式の中の特定の演算子の位置にあると判断された場合に、当該カーソルより前の数式部分と当該カーソルから後の数式部分とを分割し、当該カーソルが位置する特定の演算子により結合して修正する数式修正手段と、
    を備えたことを特徴とする電子式計算機。
  2. 前記2次元関数は平方根であって、
    前記数式修正手段は、1つの平方根の範囲内で入力された数式を対象に、前記カーソルより前の平方根の範囲の数式部分と当該カーソルから後の平方根の範囲の数式部分とに分割して修正することを特徴とする請求項1に記載の電子式計算機。
  3. 前記2次元関数は分数であって、
    前記数式修正手段は、1つの分数の範囲内で入力された数式を対象に、前記カーソルが位置する分母部分の当該カーソルより前の分数の範囲の数式部分と当該カーソルから後の整数の範囲の数式部分とに分割して修正することを特徴とする請求項1に記載の電子式計算機。
  4. 数式を自然表示する電子式計算機のコンピュータを制御するためのプログラムであって、
    前記コンピュータを、
    ユーザ操作に応じて、2次元関数を含む数式を入力する数式入力手段、
    この数式入力手段により入力された数式を表示部に表示させる数式表示制御手段、
    この数式表示制御手段により表示された数式に対して、カーソルをユーザ操作に応じ移動可能にして表示させるカーソル表示制御手段、
    ユーザ操作に応じて、前記数式の分割を指示する分割指示手段、
    この分割指示手段により前記数式の分割が指示された場合に、前記カーソル表示制御手段により表示されたカーソルが前記数式表示制御手段により表示された数式の中の特定の演算子の位置にあるか否かを判断する分割位置判断手段、
    この分割位置判断手段により前記カーソルが前記数式の中の特定の演算子の位置にあると判断された場合に、当該カーソルより前の数式部分と当該カーソルから後の数式部分とを分割し、当該カーソルが位置する特定の演算子により結合して修正する数式修正手段、
    として機能させるためのプログラム。
JP2010056326A 2010-03-12 2010-03-12 電子式計算機およびプログラム Active JP5488071B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010056326A JP5488071B2 (ja) 2010-03-12 2010-03-12 電子式計算機およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010056326A JP5488071B2 (ja) 2010-03-12 2010-03-12 電子式計算機およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014031514A Division JP5700147B2 (ja) 2014-02-21 2014-02-21 電子式計算機およびプログラム

Publications (2)

Publication Number Publication Date
JP2011191919A JP2011191919A (ja) 2011-09-29
JP5488071B2 true JP5488071B2 (ja) 2014-05-14

Family

ID=44796785

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010056326A Active JP5488071B2 (ja) 2010-03-12 2010-03-12 電子式計算機およびプログラム

Country Status (1)

Country Link
JP (1) JP5488071B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104461536A (zh) * 2014-12-04 2015-03-25 小米科技有限责任公司 运算处理方法及装置
CN106201470A (zh) * 2016-06-28 2016-12-07 宇龙计算机通信科技(深圳)有限公司 计算器程序的运行控制方法、运行控制装置和终端

Also Published As

Publication number Publication date
JP2011191919A (ja) 2011-09-29

Similar Documents

Publication Publication Date Title
CN109445675B (zh) 电子设备、数学式显示控制方法以及记录介质
US8843537B2 (en) Electronic calculator, display method, and recording medium for displaying mathematical expression in full color
US8214413B2 (en) Electronic calculator with a formula display function
JP5488071B2 (ja) 電子式計算機およびプログラム
JP5700147B2 (ja) 電子式計算機およびプログラム
JP5211851B2 (ja) 電子式計算機
JP6593505B1 (ja) 計算機、電子機器、設定方法、及びプログラム
JP2013015961A (ja) 計算装置およびプログラム
JP7347633B2 (ja) 計算装置、計算支援方法及びプログラム
JP6504128B2 (ja) 電子機器、データ処理方法およびプログラム
JP5979212B2 (ja) 電子機器およびプログラム
JP6528483B2 (ja) 計算処理装置およびプログラム
JP5505531B2 (ja) 電子式計算機
JP6620907B1 (ja) 計算機、設定方法、及びプログラム
JP7196477B2 (ja) 計算機、表示方法、及びプログラム
JP5446312B2 (ja) 電子式計算機およびプログラム
JP2008146289A (ja) 分数入力表示装置及び分数入力表示プログラム
JP6759591B2 (ja) 電子機器及び計算処理プログラム
JP2010072940A (ja) 電子式計算機
JP5659760B2 (ja) 電子計算機およびプログラム
JP2018081712A (ja) 数式表示制御装置、数式表示制御方法、数式表示制御プログラム
JP2008146532A (ja) 数式処理装置及び数式処理プログラム
JP6365018B2 (ja) 数式表示制御装置およびプログラム
JP5381152B2 (ja) 数式演算装置およびプログラム
JP2021092973A (ja) 電子機器、電子機器の制御方法、及び電子機器の制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140210

R150 Certificate of patent or registration of utility model

Ref document number: 5488071

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150