(57)【特許請求の範囲】
【請求項１】
実数を記憶している実数記憶手段と、
この実数記憶手段に記憶されている実数を表示させる第１の表示制御手段と、
前記実数記憶手段に記憶されている実数を、予め定められている演算に基づいて、正の整数による平方根の和又は差の計算式に変換する変換手段と、
この変換手段により変換された計算式を、予め定められている平方根記号を用いて表示させる第２の表示制御手段と、
を備えていることを特徴とする平方根記号表示制御装置。
【請求項２】
請求項１に記載の平方根記号表示制御装置において、更に、
実数を入力する実数入力手段と、
この実数入力手段により入力された実数を前記実数記憶手段に記憶させる記憶制御手段と、
を備えていることを特徴とする平方根記号表示制御装置。
【請求項３】
請求項１または２に記載の平方根記号表示制御装置において、更に、
前記第１の表示制御手段による表示と、前記第２の表示制御手段による表示とを切り換える表示切換手段、を備えていることを特徴とする平方根記号表示制御装置。
【請求項４】
実数を記憶している実数記憶手段と、
この実数記憶手段に記憶されている実数を表示させる第１の表示制御手段と、
前記実数記憶手段に記憶されている実数を、予め定められている演算に基づいて、０または正の整数による平方根の和又は差の計算式に変換する変換手段と、
この変換手段により変換された計算式を、予め定められている平方根記号を用いて表示させる第２の表示制御手段と、
を備え、
前記変換手段は、
０または正の整数である、第１の候補値および第２の候補値を決定する候補値決定手段と、
この候補値決定手段により決定された前記第１の候補値および第２の候補値それぞれの平方根の和又は差の計算値と、前記実数記憶手段に記憶されている実数との差が、予め定められている判定条件を満たすか否かを判定する判定手段と、
を有し、この判定手段により前記判定条件を満たすと判定された第１の候補値および第２の候補値、それぞれの平方根の和又は差の計算式を、前記実数を表す計算式として決定すること、
を特徴とする平方根記号表示制御装置。
【請求項５】
請求項４に記載の平方根記号表示制御装置において、前記判定条件は、当該装置固有のマシン・イプシロンに基づく予め定められている数値範囲であることを特徴とする平方根記号表示制御装置。
【請求項６】
請求項４または５に記載の平方根記号表示制御装置において、
前記候補値決定手段は、第１の候補値に基づいて第２の候補値を決定することを特徴とする平方根記号表示制御装置。
【請求項７】
請求項４〜６の何れかに記載の平方根記号表示制御装置において、
前記変換手段は、
前記候補値決定手段による第１の候補値および第２の候補値の決定と、前記判定手段による前記判定条件を満たすか否かの判定とを繰り返し実行させ、前記判定条件を満たす第１の候補値および第２の候補値それぞれの平方根の和又は差の計算式を求める演算処理手段を備えていることを特徴とする平方根記号表示制御装置。
【請求項８】
請求項４〜７の何れかに記載の平方根記号表示制御装置において、
前記実数は、計算処理の結果あるいは途中結果において算出される実数であり、
前記第２の表示制御手段は、前記変換手段により変換された計算式を記憶し、前記実数に代えて前記計算処理を実行する実行手段を備えていることを特徴とする平方根記号表示制御装置。
【請求項９】
平方根記号を表示させるための平方根記号表示制御装置に、
実数を記憶させるための実数記憶機能と、
この実数記憶機能によって記憶されている実数を表示させる第１の表示制御機能と、
前記実数記憶機能によって記憶されている実数を、予め定められている演算に基づいて、正の整数による平方根の和又は差の計算式に変換する変換機能と、
この変換機能により変換された計算式を予め定められている平方根記号を用いて表示させる第２の表示制御機能と、
を実現させるためのプログラム。
【請求項１０】
平方根記号を表示させるための平方根記号表示制御装置に、
実数を記憶させるための実数記憶機能と、
この実数記憶機能によって記憶されている実数を表示させる第１の表示制御機能と、
前記実数記憶機能によって記憶されている実数を、予め定められている演算に基づいて、０または正の整数による平方根の和又は差の計算式に変換する変換機能と、
この変換機能により変換された計算式を、予め定められている平方根記号を用いて表示させる第２の表示制御機能と、
を実現させ、
前記変換機能は、
０または正の整数である、第１の候補値および第２の候補値を決定する候補値決定機能と、
この候補値決定機能により決定された前記第１の候補値および第２の候補値それぞれの平方根の和又は差の計算値と、前記実数記憶手段に記憶されている実数との差が、予め定められている判定条件を満たすか否かを判定する判定機能と、
を有し、この判定機能により前記判定条件を満たすと判定された第１の候補値および第２の候補値、それぞれの平方根の和又は差の計算式を、前記実数を表す計算式として決定すること、
を特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、小数以下の値（小数部）を有する実数を、０または正の整数による平方根の和又は差の計算式に変換し、平方根記号（根号；√）に相当する記号を使って表示する機能を備えた、平方根記号表示制御装置、平方根記号表示制御方法、及びプログラムに関する。
【０００２】
【従来の技術】
従来、関数電卓やポケット・コンピュータなどの電子計算装置で平方根を扱う場合は、平方根を求めたい実数の小数で表現された近似値を求めるのが一般的である。例えば、ユーザは、√３を使って計算する場合、３を入力した後に予め定められているキーを押下し、演算処理によって√３の近似値（１．７３２０５０…）を求める。以降の演算過程では、√３の代りに該近似値を使うことになる。
一部の電子計算装置では、数式を内部表現として持つことで、√（ルート）記号を有した平方根表示のまま記憶して、先の例ならば√３をそのままに演算を行う。そして、最終的に√３＋２の解が求まった段階で、数値計算によって近似値（３．７３２０５０…）を求める。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の平方根の扱いでは、計算によって小数表現の近似値を求めることはできたが、その逆変換、即ち小数表示された値を平方根に変換して表示することはできない。
その為、小数と平方根が入り混じった計算をするには、ユーザは、平方根のデータを別途計算機等で事前に入力値の形式を小数に合わせる手間を必要とし作業が煩雑になる問題があった。また、例えば、コレスキ分解やベクトル演算など、平方根のまま計算するほうが有利な演算処理に対して、手持ちのデータが少数表示されるため、ユーザは、止む無く演算の複雑な小数による計算をしなければならないという不便があった。
また、計算の入力や計算結果の表示が小数である場合、桁数が多くなることが多い。このため、表示スペースの限られた卓上電卓等を用いた場合は、ユーザにとって、表示のスクロールや表示スペースの切換を頻繁に行う必要が生じ、使い勝手が良くないという問題もある。
【０００４】
本発明は、上記の課題に鑑みてなされたものであり、小数部を有する実数を、平方根の和又は差の計算式に変換・表示する平方根記号表示制御装置、平方根記号表示制御方法、及びプログラムを提供し、電子計算装置等の使い勝手を改善することを目的とする。
【０００５】
【課題を解決するための手段】
以上の課題を解決するために、請求項１記載の発明の平方根記号表示制御装置は、実数を記憶している実数記憶手段と、この実数記憶手段に記憶されている実数を表示させる第１の表示制御手段と、前記実数記憶手段に記憶されている実数を、予め定められている演算に基づいて、正の整数による平方根の和又は差の計算式に変換する変換手段と、この変換手段により変換された計算式を、予め定められている平方根記号を用いて表示させる第２の表示制御手段と、を備えていることを特徴とする。
【０００６】
また、請求項９記載の発明のプログラムは、平方根記号を表示させるための平方根記号表示制御装置に、実数を記憶させるための実数記憶機能と、この実数記憶機能によって記憶されている実数を表示させる第１の表示制御機能と、前記実数記憶機能によって記憶されている実数を、予め定められている演算に基づいて、正の整数による平方根の和又は差の計算式に変換する変換機能と、この変換機能により変換された計算式を予め定められている平方根記号を用いて表示させる第２の表示制御機能と、を実現させることを特徴とする。
【０００８】
請求項１、９に記載の発明によれば、記憶されている実数を平方根の計算式、例えば、a√Ａ±ｂ√Ｂ…±ｎ√Ｎ（Ａ，Ｂ…Ｎは正の整数，ａ，ｂ…ｎは実数）の形式に変換し表示する。
【０００９】
従って、ユーザは、本発明を利用することによって、小数表示の計算から、平方根表示の計算に移行できる従来に無い利便性を得られる。また、平方根表示の計算式を、平方根記号（根号）に相当する記号で表示されので、数学的には同じ意味であるべき乗表示にくらべて、例えば、無理数であるといった数字の意味を認識しやすくなる。
【００１０】
請求項２記載の発明は、請求項１に記載の平方根記号表示制御装置において、更に、実数を入力する実数入力手段と、この実数入力手段により入力された実数を前記実数記憶手段に記憶させる記憶制御手段と、を備えていることを特徴とする。
【００１１】
請求項２記載の発明によれば、請求項１と同様の効果を奏するとともに、平方根表示へ変換する値をユーザは適宜入力することができる。
入力手段は、例えば、所謂電子卓上計算機等の数値入力キーや、ＧＵＩで表示されたキーをマウスやポインタなどで選択する手動入力、或いは数値データをメモリなどの記憶媒体から読み出して行う入力などによって実現される。手動入力であれば、従来の電子卓上計算機同様の使い勝手を提供することが可能となり、記憶媒体からの入力であれば、実験データ等の大量の入力が必要な場合に対応することができ、使い勝手を向上させることができる。
【００１２】
請求項３記載の発明は、請求項１または２に記載の平方根記号表示制御装置において、更に、前記第１の表示制御手段による表示と、前記第２の表示制御手段による表示とを切り換える表示切換手段、を備えていることを特徴とする。
【００１３】
請求項３記載の発明によれば、請求項１または２と同様の効果を奏するとともに、変換対象となった実数を、小数表示と平方根表示を自在に切り換えることができる。
【００１４】
請求項４記載の発明は、実数を記憶している実数記憶手段と、この実数記憶手段に記憶されている実数を表示させる第１の表示制御手段と、前記実数記憶手段に記憶されている実数を、予め定められている演算に基づいて、０または正の整数による平方根の和又は差の計算式に変換する変換手段と、この変換手段により変換された計算式を、予め定められている平方根記号を用いて表示させる第２の表示制御手段と、を備え、前記変換手段は、０または正の整数である、第１の候補値および第２の候補値を決定する候補値決定手段と、この候補値決定手段により決定された前記第１の候補値および第２の候補値それぞれの平方根の和又は差の計算値と、前記実数記憶手段に記憶されている実数との差が、予め定められている判定条件を満たすか否かを判定する判定手段と、を有し、この判定手段により前記判定条件を満たすと判定された第１の候補値および第２の候補値、それぞれの平方根の和又は差の計算式を、前記実数を表す計算式として決定すること、を特徴とする。
【００１５】
請求項５記載の発明は、請求項４に記載の平方根記号表示制御装置において、前記判定条件は、当該装置固有のマシン・イプシロンに基づく予め定められている数値範囲であることを特徴とする。
【００１６】
請求項５記載の発明によれば、請求項４と同様の効果を奏するとともに、前記判定条件にマシン・イプシロンを用いるため、実数をより正確な平方根の和又は差の計算式に変換することが可能である。マシン・イプシロンとは、計算装置の最小限の演算誤差である。例えば、実数Ｘを浮動小数点方式で、Ｘ＝±ｄ．ｄｄｄｄｄ…×βe（有効桁数ｐ）表現する場合、マシン・イプシロンε＝（β／２）×β-pと表される。１０進法の有効桁数４桁の例では、ε＝５×１０-4になる。
ここで、判定条件を、例えは、平方根表示された計算式の近似値と実数との誤差がマシン・イプシロン以下として、マシン・イプシロンを基に判定を行うならば、当該計算装置の処理において、小数表示から平方根表示への変換が十分に精度を有したものであることになる。尚、マシン・イプシロンは、予め値を記憶させておいても良いし、予め定められているプログラムによってその都度求めるものとしても良い。
【００１７】
請求項６記載の発明は、請求項４または５に記載の平方根記号表示制御装置において、前記候補値決定手段は、第１の候補値に基づいて第２の候補値を決定することを特徴とする。
【００１８】
請求項６記載の発明によれば、請求項４または５と同様の効果を奏するとともに、前記候補値決定手段によって決定される第１の候補値と第２の候補値とが、予め定められている関係にある場合、第１の候補値から第２の候補値を決定することによって、演算処理数を軽減させることができる。
【００１９】
請求項７記載の発明は、請求項４〜６の何れかに記載の平方根記号表示制御装置において、前記変換手段は、前記候補値決定手段による第１の候補値および第２の候補値の決定と、前記判定手段による前記判定条件を満たすか否かの判定とを繰り返し実行させ、前記判定条件を満たす第１の候補値および第２の候補値それぞれの平方根の和又は差の計算式を求める演算処理手段を備えていることを特徴とする。
【００２０】
請求項７記載の発明によれば、請求項４〜６の何れかと同様の効果を奏するとともに、例えば、平方根表示の計算式√Ａ±√Ｂ（Ａ，Ｂは０または正の整数）の形に変換する場合、変換手段で、整数Ａ及びＢの候補値に０〜ｎ（ｎは正の整数）を逐次当てはめ、その都度判定手段で適切な変換がなされたかどうかを確認する。これは、単純なループ処理で実行できるので、計算機に搭載されたメモリのワーク領域等が少ない場合であっても、本発明を実現することができる。
【００２１】
請求項８記載の発明は、請求項４〜７の何れかに記載の平方根記号表示制御装置において、前記実数は、計算処理の結果あるいは途中結果において算出される実数であり、前記第２の表示制御手段は、前記変換手段により変換された計算式を記憶し、前記実数に代えて前記計算処理を実行する実行手段を備えていることを特徴とする。
【００２２】
請求項８記載の発明によれば、請求項４〜７の何れかと同様の効果を奏するとともに、前記変換手段により変換された計算式は、平方根記号（根号）を備えた内部表現、例えば、変換結果として２√３が得られた場合、「２」「√」「３」の順番を維持した１つのデータ・セットとしてメモリ等の記憶領域に記憶され、以降の計算処理において実数の代りに利用される。
【００２３】
従って、ユーザは手持ちのデータが少数表示された計測値であっても、平方根表示に変換し、例えば、コレスキ分解やベクトル演算など、平方根のまま計算するほうが有利な演算処理で利用することが可能になる。特に、コレスキ分解やベクトル演算などが、例えば、従来の関数電卓と同様に予め内部に演算機能を有する場合は、小数から平方根への変換、続く関数の利用がシームレスに行われ、高い利便性を発揮できる。
【００２４】
【発明の実施の形態】
[第１の実施の形態]
以下、図１〜図５を参照して、本発明に係る平方根記号表示制御装置の第１の実施の形態を詳細に説明する。本実施の形態は、平方根記号表示制御装置を所謂関数電卓に適用した場合を例とするが、その他、サブノートパソコン、ＰＤＡ、多機能携帯電話機などの計算機能を備えた種々の電子装置に適用しても良い。
【００２５】
［外観の説明］
図１は、本実施の形態の外観の一例を示した外観図である。同図に示すように、関数電卓１０は、数値や演算操作の入力を行う操作入力キー１４と、入力された数値や演算結果を表示するＬＣＤ１５と、内蔵電池や所謂太陽電池等の電源（図示省略）を備え、金属や樹脂によって、例えばカード形状にケーシングされている。
【００２６】
操作入力キー１４は、入力する内容に応じて公知の数字キー１４１、四則演算記号キー１４２、機能選択キー１４３、実行指示を入力するＥＸＥキー１４４などを備え、本実施の形態においては、特に、数値の小数表示と平方根表示の切換を行う表示切換キー１４５が備えられている。
【００２７】
[構成の説明]
次に、機能の構成の説明をする。図２は、本実施の形態の内部構成を示すブロック図である。同図において、関数電卓１０は、ＣＰＵ（Central  Processing  Unit）１１０、ＲＡＭ（Random  Access  Memory）１２０、ＲＯＭ（Read  Only  Memory）１３０、入力部１４０、表示部１５０、及び当該各構成要素を接続するバス１６０等から構成されている。
【００２８】
ＣＰＵ１１０は、ＲＯＭ１３０に記憶されているシステムプログラム１３１等に規定されている手順に従って、各構成要素を統一的に制御することにより、関数電卓１０としての機能を実現する。
ＣＰＵ１１０は、従来の関数電卓と同様に、ＲＯＭ１３０内に記憶される各演算機能固有のプログラムを実行することによって、微分演算機能や合成関数機能などを実現することは勿論であるが、特に本実施の形態では、表示切換キー１４５の押下信号を契機として、ＲＯＭ１３０に記憶されている、変換プログラム１３４、第２表示制御プログラム１３５を、ＲＡＭ１２０内のワーク領域１２９に展開し、展開したプログラムに基づいて後述する平方根記号表示処理を実行する。
【００２９】
ＲＡＭ１２０は、ＣＰＵ１１０の作業領域として、プログラムや数値の一時的な記憶を担い、プログラム展開や作業データの記憶がされるワーク領域１２９のほか、特に、表示部１５０に表示される内容（数値・数式など）が記憶される表示データ記憶領域１２２と、平方根表示への変換対象となる数値を記憶する実数データ記憶領域１２４と、平方根表示の候補値が記憶される候補値データ記憶領域１２６と、平方根の和又は差の計算式を記憶する平方根データ記憶領域１２８と、を備える。
【００３０】
ＲＯＭ１３０は、システムプログラム１３１、アプリケーションプログラム１３２、及び、特に本実施の形態では、第１表示制御プログラム１３３と、変換プログラム１３４と、第２表示制御プログラム１３５と、マシン・イプシロン１３６と、を記憶している。
【００３１】
システムプログラム１３１は、ＣＰＵ１１０に当該関数電卓１０の基本的な機能を実現させるためのプログラムであって、このプログラムによってＣＰＵ１１０は、例えば、ＲＡＭ１２０内に記憶されたデータを別の格納位置に記憶する処理、入力部１４０より入力される数値を表示データ記憶領域１２２に記憶させる処理、などを行う。
【００３２】
アプリケーションプログラム１３２は、ＣＰＵ１１０に所謂関数電卓としての複数の関数演算機能を実現させる為のプログラムであって、例えば、公知の微分方程式等の数値解を求める微分演算プログラムや、予め変数記号に定義された変数同士或いは予め定義された関数と指定された単項式或いは多項式との合成関数を求める合成関数プログラム等を含む。平方根表示された計算式を使って演算を行うためのプログラムもここに含まれる。
【００３３】
第１表示制御プログラム１３３は、ＣＰＵ１１０の実行により、入力部１４０から入力された数値をＲＡＭ１２０内の表示データ記憶領域１２２に記憶させ、表示部１５０に表示させるためのプログラムである。
【００３４】
変換プログラム１３４は、ＣＰＵ１１０の実行により、表示データ記憶領域１２２に記憶されている値が実数である場合、実数データ記憶領域１２４に記憶し、０または正の整数による平方根の和又は差の計算式、即ち√Ａ±√Ｂ（Ａ、Ｂは整数）の計算式に変換するためのプログラムである。
【００３５】
具体的には、変換プログラム１３４によりＣＰＵ１１０は、表示データ記憶領域１２２に記憶されている値が小数部を含む実数である場合、表示データ記憶領域１２２内の値を実数データ記憶領域１２４に記憶する。次に、予め定められている範囲内にある０および正の整数の中から、実数データ記憶領域１２４の値を平方根の和又は差の計算式√Ａ±√Ｂの根号内整数Ａ、Ｂとなる第１の候補値と第２の候補値を選択して、整数Ａと整数Ｂによる平方根の和又は差の計算値（近似値）を求め、計算値と変換対象の実数との誤差がマシン・イプシロンεより小さいか否かを判定する。判定条件を満たす場合は、第１、第２の候補値を整数ＡまたはＢとして決定する。
【００３６】
第２表示制御プログラム１３５は、ＣＰＵ１１０の実行により、変換プログラム１３４が決定した整数ＡとＢを使って、表示部１５０に平方根の和又は差の計算式を、平方根記号（根号）または根号に相当する表示記号（例えば、“「”記号）を使った内部表現で記憶するとともに、ＬＣＤ１５に平方根表示するためのプログラムである。平方根記号に相当する表示記号は、表示部１５０の表示方法等によって適宜設定可能であるが、√（ルート）記号をイメージさせる設定とするのが望ましい。
【００３７】
マシン・イプシロン１３６は、当該関数電卓１０における最小誤差εを示すものである。なお、マシン・イプシロン１３６は、数値データでなくマシン・イプシロンを求めるプログラムであっても良い。
【００３８】
入力部１４０は、ユーザが数値や演算処理の操作を入力する手段であって、図１の例では、操作入力キー１４に相当し、数値や初期条件等を入力する数字キー１４１と、四則演算記号を入力する四則演算記号キー１４２と、各種機能を指定する機能選択キー１４３と、小数表示と平方根表示を切り換える表示切換キー１４５と、を備える。そして、ユーザに押下されたキーに対応する押下信号がＣＰＵ１１０に出力される。
【００３９】
表示部１５０は、図１の例では、ＬＣＤ（液晶表示装置）１５に相当し、ＣＰＵ１１０の制御の下、数値や数式はもとより、指定された各種のメニュー画面やグラフ等を表示する。
【００４０】
[動作の説明]
次に、関数電卓１０の動作について説明する。尚、所謂関数電卓としての関数機能の選択、数式や数値の表示、四則演算処理等の処理に関する動作は公知であるので、ここでの詳細な説明は省略し、本発明に係る平方根記号表示の処理についてのみ説明する。
【００４１】
図３および図４は、変換プログラム１３４、第２表示プログラ１３５を、実行することによりＣＰＵ１１０が行う平方根記号表示処理の動作を説明するフローチャートである。平方根記号表示の対象となる実数は、すでにＲＡＭ１２０内の表示データ記憶領域１２２に記憶されているものとする。図５（ａ）は、表示の一例を示す図であって、実数３．９６８１１８７８５が表示されている。
【００４２】
ここで、ユーザによって表示切換キー１４５が押下されると、ＣＰＵ１１０は、変換プログラム１３４をＲＯＭ１３０からＲＡＭ１２０に展開して実数の平方根表示への変換を開始する。
【００４３】
まず、表示データ記憶領域１２２に記憶されている数値が、小数部を含む実数であることを確認する。小数を含む実数で無い場合、例えば、整数の場合は（ステップＳ２のＮＯ）即時に本処理を終了する。
小数部を含む実数である場合は（ステップＳ２のＹＥＳ）、表示データ記憶領域１２２の値を、変換処理の対象とみなして実数データ記憶領域１２４に実数Ｘとして記憶（コピー）する。（ステップＳ４）。
【００４４】
次に、ＣＰＵ１１０は、判定値ε’を、マシン・イプシロン１３６を読み出すことによって取得する（ステップＳ６）。
次いで、ＣＰＵ１１０は、ワーク領域１２９に実数Ｘの符号キャリアＫ＝１を記憶し（ステップＳ８）、実数Ｘの符号がマイナスの場合（ステップＳ１０のＹＥＳ）は、実数Ｘの符号を逆転させ、符号キャリアＫに−１を代入する（ステップＳ１２）。
【００４５】
次に、平方根表示の候補値の選択とその検算を行う。ＣＰＵ１１０は、候補値の選択範囲を規定する変数ｎに１を代入し（ステップＳ１４）、整数Ｂを０に設定し（ステップＳ１６）、整数Ａを１＋ｎに設定する（ステップＳ１８）。以降、ＣＰＵ１１０は、ループ処理によって、整数Ａを１から１つずつ加算してｎ＋９９まで、整数Ｂを０から１つずつ加算してｎ＋９９まで選択する。選択した整数ＡおよびＢは、ＲＡＭ１２０の候補値データ記憶領域１２６として記憶させる。
【００４６】
整数ＡとＢを選択したならば、ＣＰＵ１１０は、検算に入る。まず、ＣＰＵ１１０は、整数Ａと整数Ｂによる平方根の和の計算値（近似値）を求め、該計算値と実数Ｘの誤差の絶対値を求め、判定値ε’と比較する（ステップＳ２０）。
誤差が判定値ε’以下の場合、即ち実数Ｘと計算値の誤差が十分に小さいと判断される場合（ステップＳ２０のＹＥＳ）、平方根データ記憶領域１２８を√Ａ＋√Ｂとし（ステップＳ４２）、符号キャリアＫを参照して符号をもとにもどす（ステップＳ５０）。
【００４７】
誤差が判定値ε’より大きい場合は、次に平方根の差の計算値の絶対値と実数Ｘとの誤差の絶対値を求め、同様に判定値ε’と比較する（ステップＳ２２）。
平方根の差の計算値と実数Ｘとの誤差が判定値ε’以下の場合（ステップＳ２２のＹＥＳ）、ＣＰＵ１１０は、整数Ａと整数Ｂの比較を行って、整数Ａが整数Ｂより小さければ（ステップＳ４４のＹＥＳ）、整数Ａと整数Ｂの値を入れ換え（ステップＳ４６）、平方根データ記憶領域１２８を√Ａ−√Ｂとし（ステップＳ４８）、符号キャリアＫを参照して符号をもとにもどす（ステップＳ５０）。
【００４８】
平方根データ記憶領域１２８が決定されたならば、ＣＰＵ１１０は、ＲＯＭ１３０より第２表示制御プログラム１３５をワーク領域１２９に展開して、平方根記号を用いた表示処理を実行する。即ち、平方根データ記憶領域１２８を表示データ記憶領域１２２に記憶し、ＬＣＤ１５に平方根記号を用いた表示をする（ステップＳ５２）。このときの表示例が図５（ｂ）である。図５（ｂ）は、平方根記号表示の一例を示す図であって、実数３．９６８１１８７８５が、変換されて√５＋√３と表示されている。
【００４９】
また、ステップＳ２２において、整数Ａ、Ｂによる計算式が、判定条件を満たさないと判定した場合（ステップＳ２２のＮＯ）、ＣＰＵ１１０は、整数Ａがｎ×１００の範囲内か否かを判定する（ステップＳ２４）。ｎ×１００以下であれば（ステップＳ２４のＹＥＳ）、ＣＰＵ１１０は、整数Ａに１を加算してステップＳ２０に処理を移行する。一方、整数Ａがｎ×１００以下でないと判断した場合には、ＣＰＵ１１０は整数Ｂがｎ×１００の範囲内か否かを判定する（ステップＳ２８）。
【００５０】
そして、ステップＳ２８において、整数Ｂがｎ×１００以下でないと判定した場合は、ＣＰＵ１１０は、その旨を表示部１５０に表示してユーザに整数Ａ、Ｂを選択する範囲を広げるか、処理を中止するかの入力を促す（ステップＳ３２）。この時の表示例が図５（ｃ）である。図５（ｃ）は、選択範囲内では平方根への変換ができなかった旨をユーザに知らせる表示の一例を示す図である。同図では、変換できなかったことを告げる「ＮＯＴ  ＥＸＣ．（Ｅｘｃｈｅｎｇの略の意）」と選択範囲を広げるか否かの入力を促す「Ｅｘｔｅｎｄ？」が表示されている。
【００５１】
ここで、ＥＸＥキー１４４が押下されたならば（ステップＳ３４のＹＥＳ）、ＣＰＵ１１０は、変数ｎが１０００以上か否かを判定する（ステップＳ３６）。そして、１０００以上でないと判定した場合、変数ｎに１００を加算して、ステップＳ１６へ処理を移行する。
なお、ここで、ステップＳ３６において、変数ｎと比較される数値として、「１０００」を用いているが、これ以外の数値、例えば、「１」「１０」等の他の数値でもよい。また、この数値は、使用者により入力された数値でも、または装置自体が予め記憶していた数値でも良い。
また、ステップＳ３４において、ＥＸＥキー１４４以外が押下された場合、或いは、ステップＳ３６において変数ｎが１０００以上であると判定した場合、ＣＵＰ１１０は、表示部１５０に変換できない旨のエラー表示をして（ステップＳ４０）処理を終了する。この時の表示例が図５（ｄ）であって、変換できないことを示すエラー表示がされている。
尚、表示データ記憶領域１２２は、そのまま残っているので、ユーザは適宜小数表示のまま計算を続行させることが可能である。
【００５２】
以上、本発明の第１の実施の形態について説明したが、本発明が適用可能なものはこれに限られない。
例えば、候補値である整数Ａ、Ｂを繰り返し処理によって決定し、その都度判定条件を満たすかどうかを比較したが、予め候補値をテーブル・データとして与えておいて、そこから逐次読み込むものとしても良い。また、本実施例では、平方根の計算式を構成する項数を２としたが、整数Ａ、Ｂ、Ｃ、Ｄ…のように２以上としても良いし、項数を固定せずに順次項数を増やして行く、或いはユーザが変換を開始する前に項数を設定できるとしても良い。
【００５３】
その他、関数電卓１０の細部構成、動作、及びエラー表示等についても、本発明の趣旨を逸脱しない範囲で適宜に変更可能である。例えば、伝送制御部を備え、通信回線を介してプログラム等を取得するとしても良いし、或いは例えば、メモリ・カードや磁気ディスク、光ディスク等の着脱自在な記憶媒体読み取り部を備え、データやプログラム等を記憶媒体から取得するとしても良い。
【００５４】
[第２の実施の形態]
次に、図６〜図８を参照して、本発明に係る平方根記号表示装置の第２の実施の形態について説明する。本実施の形態では、関数電卓１０にて変換が行われた後の平方根の計算式による四則演算の一例を説明する。
尚、本実施の形態においては、第１の実施の形態と同様の構成要素によって実現される構成要素については、同じ符号を付与し説明を省略する。また、実数が平方根表示に変換される処理の過程は、第１の実施の形態と同様であるため、ここでの説明は省略する。
【００５５】
［外観の説明］
関数電卓１０は、数値や演算操作の入力を行う操作入力キー１４と、入力された数値や演算結果を表示するＬＣＤ１５と、内蔵電池や所謂太陽電池等の電源を備える。
特に、操作入力キー１４には、入力する内容に応じて公知の数字キー１４１、四則演算記号キー１４２、機能選択キー１４３、実行指示を入力するＥＸＥキー１４４などの他に、数値の小数表示と平方根表示の切換を行う表示切換キー１４５が備えられている。
【００５６】
[構成の説明]
関数電卓１０は、ＣＰＵ（Central  Processing  Unit）１１０、ＲＡＭ（Random  Access  Memory）１２０、ＲＯＭ（Read  Only  Memory）１３０、入力部１４０、表示部１５０、及び当該各構成要素を接続するバス１６０等から構成されている。本実施の形態で行われる、平方根表示を用いた四則演算処理は、アプリケーションプログラム１３２の一つとしてＲＯＭ１３０に記憶されたプログラムを、必要に応じてＣＰＵ１１０が読み出し、ＲＡＭ１２０に展開・実行することにより実現される。
【００５７】
[加算・減算の説明]
次に、演算処理について、まず加算減算を説明する。
図６は、加算減算処理の動作を示すフローチャートである。同図において、ＣＰＵ１１０は、予め平方根データ記憶領域１２８ｎとして２√３、平方根データ記憶領域１２８ｍとして５√３を記憶しているものとする。内部表現としては、例えば、２√３は、「２」「√」「３」の順番を持ったデータのセットとして記憶される。即ち、「２」の前はデータ先頭にあたり、「３」の後にはデータ最後尾のＥＯＦが記録されている（ステップＳ２１０）。
【００５８】
まず、ＣＰＵ１１０は、根号の外に出されていた平方因子を二乗して根号内整数（ここでは３）に乗算して値を置換し、平方根データを「√」「１２」と、「√」「７５」とする（ステップＳ２１２）。
次に、ＣＰＵ１１０は、＋（プラス）記号を挿入して連結し、「√」「１２」「＋」「√」「７５」のデータ・セットとして、例えば、ワーク領域１２９に記憶する（ステップＳ２１４）。
【００５９】
次に、ＣＰＵ１１０は、根号内整数の１２と７５の約数で、整数の二乗となるａ2が存在する場合、平方因数である整数ａを「＋」又はデータの先頭と、「√」の間に挿入する（以下、整数ａに当る整数を根号外整数と呼ぶ）。根号内整数は、ａ2で除算されてその商と元が置換される。この時点で、データ上は「２」「√」「３」「＋」「５」「√」「３」となる（ステップＳ２１６）。
【００６０】
そして、ＣＰＵ１１０は、１項目の根号内整数Ａ1を読み出し（ステップＳ２１８）、係数ｎ＝２として、ｎ項目の根号内整数Ａnを読み出し比較する（ステップＳ２２０→Ｓ２２２）。
根号内整数Ａ1とＡn（ここでは、３と３）が同じである場合、即ち同類項である場合には(ステップＳ２２４のＹＥＳ）、根号外整数（ここでは、２と５）を加え、該加算値をデータ先頭に近い項の「√」と、「＋」またはデータ先頭の間に挿入し（ステップＳ２３０）、他の項は消去して（ステップＳ２３２）加算処理を終える。この時点で、データ上は、「７」「√」「３」となる。
根号内整数Ａ1とＡnが異なる場合は（ステップＳ２２４のＮＯ）、データ最後尾でないなければ（ステップＳ２２６のＮＯ）、ＣＰＵ１１０は、係数ｎに１を加えてステップＳ２２２に移行する（ステップＳ２２８）。
【００６１】
減算の場合は、同様にして根号外整数の引き算を行って、「＋」記号のかわりに「−」記号を使用する。
【００６２】
[除算の説明]
次に、除算を説明する。
図７は、除算処理の動作を示すフローチャートである。ＣＰＵ１１０は、予め平方根データ記憶領域１２８ｎとして２√３、平方根データ記憶領域１２８ｍとして４√５を記憶しているものとする。まず、ＣＰＵ１１０は、根号の外に出されていた平方因子を二乗して根号内整数（ここでは３、５）に乗算した値を置換し、平方根データを「√」「１２」と、「√」「８０」とする（ステップＳ３１２）。
次に、ＣＰＵ１１０は、／記号を挿入して連結し、即ち「√」「１２」「／」「√」「８０」のデータ・セットとして、例えば、ワーク領域１２９に記憶する（ステップＳ３１４）。
【００６３】
次に、ＣＰＵ１１０は、約分をする。データは、「√」「３」「／」「√」「２０」となる（ステップＳ３１６）。次に、分母を有理化する。従って、データは、「√」「６０」「／」「２０」となる（ステップＳ３１８）。
【００６４】
次に、ＣＰＵ１１０は、「√」と、「／」またはデータ最後尾ＥＯＦとの間に挟まれた根号内整数（ここで、６０）の約数で、整数の二乗となるａ2が存在する場合、平方因数ａを「√」の前に挿入する。根号内整数は、ａ2で除算されてその商と元が置換される（ステップＳ３２０）。従って、データは「２」「√」「１５」「／」「２０」となる。
次に、約分する（ステップＳ３２２）。従って、データは「√」「１５」「／」「１０」となり、除算の演算結果をえることができる。
【００６５】
[乗算の説明]
次に、加算を含む乗算を説明する。
図８は、乗算処理の動作を示すフローチャートである。ＣＰＵ１１０が、平方根記号表示処理によって、実数１２．４０８３７３…を（２√３＋４√５）に変換し(以下、第１式という。）平方根データ記憶領域１２８ｎに記憶し、実数９．６６９３０４７…を（３√７−√３）に変換し（以下、第２式という。）平方根データ記憶領域１２８ｍに記憶する（ステップＳ４１０）。
平方根データ記憶領域１２８の内、例えば第１式の（２√３＋４√５）は、「２」「√」「３」「＋」「４」「√」「５」の順番を維持した１つのデータ・セットとして記憶されている。即ち、「２」の前はデータ先頭にあたり、「５」の後にはデータ最後尾のＥＯＦが記録されている。
【００６６】
次に、ＣＰＵ１１０は、根号の外に出されていた平方因子を二乗して、根号内整数（ここでは、３、５、７）に乗算して値を置換する。ここで第１式及び第２式は（√１２＋√８０）、（√６３−√３）と置換される（ステップＳ４１２）。
【００６７】
次いで、ＣＰＵ１１０は、√の次の整数（根号内整数）の掛け算を行う。即ち、第１式と第２式の各項の掛け算を行う。√１２と√６３の場合、√７５６を算出し、同様にして、−√３６、√５０４０、−√２４０を計算して、一旦ワーク領域１２９にそれぞれ記憶する（ステップＳ４１４）。
次に、ＣＰＵ１１０は、根号内整数（ここでは、７５６、３６、５０４０、２４０）が、平方因数である整数ａを有する場合、整数ａを根号の前に挿入し、根号と次の根号内整数を整数ａで割った商と元の整数を置換する。従って、ステップＳ４１４においてワーク領域１２９に記憶された各データは、「６」「√」「２１」、「６」、「１２」「√」「３５」、「４」「√」「１５」となる（ステップＳ４１６）。
【００６８】
ここでは、複数項の乗算なので、加算減算処理と同様にして、各計算結果を「＋」または「−」で結合し、一つのデータ・セットにし（ステップＳ４１８）、同類項は加算される。従って、ステップＳ４１６において置換されたデータは「６」「√」「２１」「−」「６」「＋」「１２」「√」「３５」「−」「４」「√」「１５」となり、（６√２１−６＋１２√３５−４√１５）を演算結果として求めることができる（ステップＳ４２０〜Ｓ４３４）。
【００６９】
以上、それぞれの場合における演算の一例を示したが、演算手法はこれに限らず、各演算を関数化あるいはルーチン化して、適宜呼び出すことで四則演算を行うとしても良いのは勿論である。従って、上記の四則演算を利用することで、種々の関数演算において、小数表示を平方根表示に変換して、演算処理を行うことができる。本発明は、種々の演算に適用可能であるが、例えば、連立方程式の一解法であるコレスキ分解や、ベクトル正規化の演算に本発明を適用することにより、当該演算の速度、精度を改善させ得る。
【００７０】
【発明の効果】
以上のように、請求項１、４、９、１０に記載の発明によれば、記憶されている小数部を有する実数を平方根の計算式に変換し表示する。従って、ユーザは、本発明を利用することによって、小数表示の計算から、平方根表示の計算に移行できる従来に無い利便性を得られる。また、平方根表示の計算式を、平方根記号（根号）に相当する記号で表示されるので、数学的には同じ意味であるべき乗表示にくらべて、例えば、無理数であるといった数字の意味を認識しやすくなる。
【００７１】
また、請求項２記載の発明によれば、請求項１と同様の効果を奏するとともに、平方根表示へ変換する値をユーザは適宜入力することができる。従って、手動入力であれば、従来の電子卓上計算機同様の使い勝手を提供でき、記憶媒体からの入力をサポートするならば、実験データ等の大量の入力が必要な場合に対応することができ、使い勝手を向上させることができる。
【００７２】
また、請求項３記載の発明によれば、請求項１または２と同様の効果を奏するとともに、変換対象となった実数を、例えば、小数表示から平方根表示への変換を実行させるキー操作（キーを押下する）を再度繰り返すことで、小数表示と平方根表示を自在に切り換えることができ、例えば、学生が小数と平方根の関係を学習する際に理解の一助とすることができる。
【００７３】
また、請求項５記載の発明によれば、請求項４と同様の効果を奏するとともに、前記判定条件にマシン・イプシロンを用いる。マシン・イプシロンを基に判定を行うことで、当該計算装置で処理するにおいて、小数表示から平方根表示への変換が十分に精度を有したものとなる。
【００７４】
また、請求項６記載の発明によれば、請求項４または５と同様の効果を奏するとともに、前記候補値決定手段によって決定される第１の候補値と第２の候補値とが、予め定められている関係にある場合、第１の候補値から第２の候補値を決定することによって、演算処理処理を軽減させることができる。
【００７５】
また、請求項７記載の発明によれば、請求項４〜６の何れかと同様の効果を奏するとともに、例えば、平方根表示の計算式√Ａ±√Ｂ（Ａ，Ｂは０または正の整数）の形に変換する場合、変換手段で、整数Ａ及びＢの候補値に０〜ｎ（ｎは正の整数）を逐次当てはめ、その都度判定手段で適切な変換がなされたかどうかを確認数する。これは、単純なループ処理で実行できるので、計算機に搭載されたＩＣメモリのワーク領域等が少ない場合であっても、本発明を実現することができる。
【００７６】
また、請求項８記載の発明によれば、請求項４〜７の何れかと同様の効果を奏するとともに、前記変換手段により変換された計算式は、平方根記号（根号）を備えた内部表現、例えば、変換結果として２√３が得られた場合、「２」「√」「３」の順番を維持した１つのデータ・セットとしてＩＣメモリ等の記憶領域に記憶され、以降の計算処理において実数の代りに利用することができる。
【図面の簡単な説明】
【図１】本発明による第１の実施の形態である関数電卓の外観を示す正面図である。
【図２】第１の実施の形態である関数電卓の内部構成を示すブロック図である。
【図３】第１の実施の形態である関数電卓において、変換プログラム１３４、第２表示プログラ１３５を、実行することによりＣＰＵ１１０が行う平方根記号表示処理の動作を説明するフローチャートである。
【図４】図３につづく、フローチャートである。
【図５】第１の実施の形態である関数電卓の表示例を示す図であって、(ａ)小数表示の例、（ｂ）平方根表示の例、（ｃ）選択範囲内では平方根への変換ができなかった旨をユーザに知らせる表示の例、（ｄ）変換できないことを示すエラー表示の例である。
【図６】第２の実施の形態の関数電卓における、平方根表示を用いた加算減算処理の動作を示すフローチャートである。
【図７】第２の実施の形態の関数電卓における、平方根表示を用いた除算処理の動作を示すフローチャートである。
【図８】第２の実施の形態の関数電卓における、平方根表示を用いた乗算処理の動作を示すフローチャートである。
【符号の説明】
１０  関数電卓
１１０  ＣＰＵ
１２０  ＲＡＭ
１２２  表示データ記憶領域
１２４  実数データ記憶領域
１２６  候補値データ記憶領域
１２８  平方根データ記憶領域
１２９  ワーク領域
１３０  ＲＯＭ
１３１  システムプログラム
１３２  アプリケーションプログラム
１３３  第１表示制御プログラム
１３４  変換プログラム
１３５  第２表示制御プログラム
１３６  マシン・イプシロン
１４０  入力部
１４４  ＥＸＥキー
１４５  表示切換キー
１５０  表示部
Ａ、Ｂ  整数
ε      マシン・イプシロン
【図１】
0003988413.tif 000002
【図２】
0003988413.tif 000003
【図３】
0003988413.tif 000004
【図４】
0003988413.tif 000005
【図５】
0003988413.tif 000006
【図６】
0003988413.tif 000007
【図７】
0003988413.tif 000008
【図８】
0003988413.tif 000009