JPH09179725A - 電子計算機 - Google Patents

電子計算機

Info

Publication number
JPH09179725A
JPH09179725A JP7338995A JP33899595A JPH09179725A JP H09179725 A JPH09179725 A JP H09179725A JP 7338995 A JP7338995 A JP 7338995A JP 33899595 A JP33899595 A JP 33899595A JP H09179725 A JPH09179725 A JP H09179725A
Authority
JP
Japan
Prior art keywords
solution
initial value
value
expression
finding
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.)
Pending
Application number
JP7338995A
Other languages
English (en)
Inventor
Hiroaki Yoshizawa
博明 吉澤
Mitsuru Okano
満 岡野
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 JP7338995A priority Critical patent/JPH09179725A/ja
Publication of JPH09179725A publication Critical patent/JPH09179725A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】関数計算機能を備えた電子計算機において、例
えば解が重解となる関数式や解が“0”となる関数式の
求解精度を向上すること。 【解決手段】求解対象関数式「f(x)=0」が、例え
ば解が重解となる関数式である場合には、ニュートン法
による求解演算処理により順次収束されるx値が解の近
似値と判定されると、その10桁目が四捨五入により丸
め処理されてf(x)=0となるか判断され、関数式の
解として表示される。また、求解対象関数式「f(x)
=0」が、例えば解が“0”となる関数式である場合に
は、ニュートン法による求解演算処理により順次収束さ
れるx値が解“0”の近似値と判定されると、その近似
解xは“0”に丸め処理されてf(x)=0となるか判
断され、関数式の解として表示される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えば関数計算機能を
備えた電子計算機に関する。
【0002】
【従来の技術】従来、関数計算機能を備えた電子計算機
において、y=f(x)なる関数式を入力し、例えばそ
の一方の変数xに対して数値を代入すると共に、他方の
変数yを指定してその解(Solve)の算出を指示す
ることで、当該指定された変数yの解が、前記数値代入
された関数式に従って算出される機能(ここでは「So
lve機能」と称する)を有するものがある。
【0003】すなわち、例えば「y=2x」なる方程式
を入力し、変数xに対して“2”と代入し、変数yを指
定して「Solve」キーを操作すると、「y=4」な
る解が算出されて表示されるようになってる。
【0004】また、前記Solve機能を有する電子計
算機では、入力された関数式y=f(x)において、f
(x)=0の解がニュートン法に従って算出される機能
を有するものがある。
【0005】図10はニュートン法による関数式y=f
(x)の解の求め方を示す図である。すなわち、図10
において、ニュートン法を使用して関数式y=f(x)
の解を求めるには、関数式y=f(x)のグラフに対
し、まず、ある初期値x0 を設定する。次に、この初期
値x0 に対応するグラフ上の点においてこのグラフの接
線を引き、この接線のx軸と交差する点を求める。そし
てこの点を次の初期値x1 として上記処理と同じく対応
するグラフ上に接線を引き、順次x2 ,x3 ,…と繰り
返しxi を求め、前記関数式y=f(x)のグラフのx
軸との接点に収束させることで、f(x)=0の点αに
対応する解を求めるもので、これを電子計算機のSol
ve機能として実用化している。
【0006】
【発明が解決しようとする課題】しかしながら、前記ニ
ュートン法を用いた従来のSolve機能を有する電子
計算機では、例えば次に説明する5つの問題がある。 (1)不連続関数式の求解能力が弱い問題がある。
【0007】(2)平方関数式の求解能力が弱い問題が
ある。 (3)解が重解となる関数式の求解精度が悪い問題があ
る。 (4)解が“0”となる関数式の求解精度が悪い問題が
ある。
【0008】(5)逆正接関数式や3乗根関数式の求解
能力が弱い問題がある。 図11は従来のSolve機能を有する電子計算機の不
連続関数式の求解操作に伴なう表示動作を示す図であ
る。
【0009】図12は各種関数式とその解をグラフ化し
て示す図であり、同図(A)は不連続関数式の一例を示
す図、同図(B)は平方関数式の一例を示す図、同図
(C)は重解となる関数式の一例を示す図、同図(D)
は解が“0”となる関数式の一例を示す図、同図(E)
は逆正接関数式の一例を示す図である。
【0010】すなわち、例えば図12(A)に示すよう
な不連続関数式「logx=0」の解“1”をニュート
ン法を用いて求める場合に、求解変数xに代入すべき初
期値xi が関数式の存在しない領域に設定されると、解
の得られないエラーの状態となってしまう。
【0011】つまり、図11に示すように、関数式「y
=logx」に対し、「x=−1」と初期値設定して
「Solve」の計算を指示すると、エラー表示となっ
てしまう。
【0012】また、例えば図12(B)に示すような平
方関数式「RT(x−3)=0」の解“3”をニュートン
法を用いて求める場合にも、求解変数xに代入すべき初
期値xi が関数式の存在しない領域に設定されると、解
の得られないエラーの状態となってしまう。
【0013】RT():平方根の掛かる範囲の意味。 一方、例えば図12(C)に示すような重解となる関数
式「(X+5)2 」の解“−5”をニュートン法を用い
て求める場合、求解変数xに代入すべき初期値xi は順
次解に向けて近付いていくものの、その桁数が小数点以
下10桁以上と非常に多くなることにより、計算機によ
る求解処理過程において桁落ちが生じて収束しきれず、
正確な解が求まらなくなってしまう。
【0014】また、例えば図12(D)に示すような解
が“0”となる関数式「ex −1=0」の解“0”をニ
ュートン法を用いて求める場合も、求解変数xに代入す
べき初期値xi は極力“0”に近付いていくものの、そ
の桁数が非常に多くなることがあり、桁落ちにより真の
解“0”に収束しないことがある。
【0015】さらに、例えば図12(E)に示すような
逆正接関数式「tan-1x=0」やこれに近似した特性
の3乗根関数式「 3RT(x)=0」の解をニュートン法
を用いて求める場合に、求解変数xに代入すべき初期値
xi がy値の殆ど変化しない関数領域に設定されると、
その接線に基づき設定される次の初期値xi が正負反対
側で、絶対値においてより大きな値となり、解の方向に
収束しない状態となってしまう。
【0016】本発明は、前記ような問題に鑑みなされた
もので、関数式の求解性能を向上することが可能になる
電子計算機を提供することを目的とする。本発明の第1
の目的は、不連続関数式の求解能力を向上することが可
能になる電子計算機を提供することににある。
【0017】本発明の第2の目的は、平方関数式の求解
能力を向上することが可能になる電子計算機を提供する
ことにある。本発明の第3の目的は、重解となる関数式
の求解精度を向上することが可能になる電子計算機を提
供することにある。
【0018】本発明の第4の目的は、解が“0”となる
関数式の求解精度を向上することが可能になる電子計算
機を提供することにある。本発明の第5の目的は、逆正
接関数式や3乗根関数式の求解能力を向上することが可
能になる電子計算機を提供することににある。
【0019】
【課題を解決するための手段】すなわち、本発明の請求
項1に係わる電子計算機は、関数式を入力する式入力手
段と、この式入力手段により入力された関数式の解を特
定の法則に従って求める求解手段と、この求解手段によ
って前記関数式の解の近似値が求められた際、この近似
値の丸め処理を行なう丸め手段と、この丸め手段により
丸め処理された値が前記関数式の解であるか否かを判断
する判断手段と、この判断手段により前記丸め手段によ
り丸め処理された値が前記関数式の解であると判断され
た際、前記丸め処理された値を前記関数式の解として表
示する解表示手段とを具備したことを特徴とする。
【0020】つまり、請求項1に係わる電子計算機で
は、求解手段によって関数式の解の近似値が求められた
際には、この近似値の丸め処理が行なわれ、この丸め処
理後の値が関数式の解であるか否が判断され、解である
と判断された場合には、その値が関数式の解として表示
されるので、例えば解が重解となる関数式をニュートン
法を用いて求解した場合の丸め処理にはn桁目以降の四
捨五入処理を行ない、また、例えば解が“0”となる関
数式をニュートン法を用いて求解した場合の丸め処理に
は“0”丸め処理を行なうことで、より高精度な解が得
られることになる。
【0021】また、本発明の請求項5に係わる電子計算
機は、関数式を入力する式入力手段と、この式入力手段
により入力された関数式の解をニュートン法に従って求
める求解手段と、この求解手段によって前記関数式の解
を求める際に、当該関数式の変数に代入して使用される
初期値を複数記憶する初期値記憶手段と、この初期値記
憶手段に記憶された複数の初期値から1つの初期値を読
み出し、前記求解手段に対し前記関数式の変数に代入し
て使用される初期値として設定する初期値設定手段と、
この初期値設定手段により前記求解手段に設定された初
期値による求解処理においてエラー(解なし)となった
場合に、前記初期値設定手段により新たな初期値を設定
させる求解制御手段とを具備し、前記求解手段は、前記
初期値設定手段によって設定された初期値で前記関数式
の解を求めることを特徴とする。
【0022】つまり、請求項5に係わる電子計算機で
は、ニュートン法を用いた求解手段によって関数式の解
を求める際には、関数式の変数に代入されて使用される
初期値が、初期値記憶手段に記憶された複数の初期値の
中から読み出されて設定され、この設定された初期値に
よる求解処理においてエラー(解なし)となった場合に
は、前記初期値記憶手段から新たな初期値が読み出され
て設定され、前記求解手段による求解処理毎に自動的な
初期値設定がなされて関数式の解が求められるので、例
えば不連続関数式をニュートン法を用いて求解した場合
には、関数式の存在する領域に初期値xi が自動設定さ
れ、確実に解が得られることになる。
【0023】また、本発明の請求項7に係わる電子計算
機は、関数式を入力する式入力手段と、この式入力手段
により入力された関数式の解を求める際に、当該関数式
の変数に代入して使用される初期値を設定する初期値設
定手段と、この初期値設定手段により設定された初期値
に基づき前記式入力手段により入力された関数式の解を
ニュートン法に従って求める求解手段と、この求解手段
による求解処理中に前記関数式の途中解が求められた
後、次の求解処理においてエラー(解なし)となった際
に、前回の求解処理にて設定使用された初期値と今回の
求解処理にて設定使用された初期値との中間値を算出す
る中点算出手段と、この中点算出手段により算出された
中間値を前記関数式の解として表示する解表示手段とを
具備したことを特徴とする。
【0024】つまり、請求項7に係わる電子計算機で
は、ニュートン法を用いた求解手段によって関数式の解
を求める際に、初期値設定手段により設定された初期値
に基づく求解処理中において、関数式の途中解が求めら
れた後、次の求解処理においてエラー(解なし)となっ
た際には、前回の求解処理にて設定使用された初期値と
今回の求解処理にて設定使用された初期値との中間値が
算出され関数式の解として表示されるので、例えば平方
関数式をニュートン法を用いて求解した場合には、途中
解求解後のエラー発生時における前回初期値と今回初期
値との中間値をもって、確実に解が得られることにな
る。
【0025】また、本発明の請求項9に係わる電子計算
機は、関数式を入力する式入力手段と、この式入力手段
により入力された関数式の解を求める際に、当該関数式
の変数に代入して使用される初期値を設定する初期値設
定手段と、この初期値設定手段により設定された初期値
に基づき前記式入力手段により入力された関数式の解を
ニュートン法に従って求める通常求解手段と、この通常
求解手段による求解処理中に前回の求解処理にて設定使
用された初期値による関数式の計算値の絶対値よりも今
回の求解処理にて設定使用された初期値による関数式の
計算値の絶対値が大きくなった際に、該前回の初期値又
は今回の初期値のうちどちらか一方をn/m(n<m)
倍した値を新たな初期値として設定するn/m値設定手
段と、このn/m値設定手段により設定された初期値に
基づき前記関数式の解をニュートン法に従って求めるn
/m求解手段と、このn/m求解手段による求解処理中
に今回の求解処理にて設定使用された初期値による関数
式の計算値が前回の求解処理にて設定使用された初期値
による関数式の計算値以下となった際に、前記通常求解
手段に戻して前記関数式の解を求める求解制御手段とを
具備し、前記通常求解手段及びn/m求解手段を併用し
た求解処理により前記関数式の解を求めることを特徴と
する。
【0026】つまり、請求項9に係わる電子計算機で
は、ニュートン法を用いた通常求解手段によって関数式
の解を求める際に、初期値設定手段により設定された初
期値に基づく求解処理中において、前回の求解処理にて
設定使用された初期値による関数式の計算値の絶対値よ
りも今回の求解処理にて設定使用された初期値による関
数式の計算値の絶対値が大きくなった際には、前回の初
期値又は今回の初期値のうちどちらか一方をn/m(n
<m)倍した値が新たな初期値として設定され、このn
/m値で設定された初期値に基づくn/m求解手段によ
る求解処理中に今回の求解処理にて設定使用された初期
値による関数式の計算値が前回の求解処理にて設定使用
された初期値による関数式の計算値以下となった際に
は、前記通常求解手段に戻して関数式の解が求められる
ので、例えば逆正接関数式や3乗根関数式をニュートン
法を用いて求解した場合には、解が収束する範囲内に初
期値が誘導され、確実に解が得られることになる。
【0027】
【発明の実施の形態】以下図面により本発明の実施の形
態について説明する。図1は本発明の実施形態に係わる
電子計算機の電子回路の構成を示すブロック図である。
【0028】この電子計算機は、CPU11を備えてい
る。前記CPU11は、キー入力部12からのキー操作
信号に応じてROM13に予め記憶されているシステム
プログラムを起動させ、回路各部の動作制御を実行する
もので、このCPU11には、前記キー入力部12,R
OM13の他、RAM14、表示駆動回路15、及び液
晶表示部16が接続される。
【0029】前記キー入力部12には、英字,数字,演
算子キー等、所望の式を変数や数値,演算子等の組合せ
により入力するためのデータ入力キー12a、通常計算
モードからSolve計算モードへ切り換える際、及び
Solve計算モードにおいて、入力された関数式の解
の算出を実行させる際に操作される「Solve」キー
12b、入力された関数式の求解処理中において、収束
途中として表示された解に対し再度求解処理を実行する
際に操作される「EXE」キー12c、表示データの選
択等においてカーソル移動を行なう際に操作される縦送
りキー「↓」12d,縦戻しキー「↑」12e、横送り
キー「→」12f,横戻しキー「←」12g等が備えら
れる。
【0030】前記ROM13には、この電子計算機の全
体の動作を制御するシステムプログラムが予め記憶され
ると共に、Solve計算処理プログラムやグラフ化処
理プログラム等、各種のサブプログラムも予め記憶され
る。
【0031】前記RAM14には、被表示データがその
描画データとして書込まれる表示レジスタ14a、So
lve計算モードでの求解処理中において各種の繰り返
し計算を行なうため繰り返し回数値が記憶される5種の
カウンタレジスタa,b,c,d,E、前記データ入力
キー12aの操作に従って入力された式データが記憶さ
れる入力式記憶エリア14b、この入力式記憶エリア1
4bに記憶された式データに含まれる全ての変数とその
数値とが対応付けて記憶される変数データレジスタ14
c、ニュートン法を用いた関数式「f(x)=0」の求
解処理において、各求解処理毎にその求解変数xとして
新たに設定される初期値xi が順次更新されて記憶され
る前回xデータレジスタ14d及び今回xデータレジス
タ14e、各求解処理毎に新たに設定される初期値xi
に基づき計算された求解対象関数式「f(x)」の計算
値が順次更新されて記憶される前回f(x)データレジ
スタ14f及び今回f(x)データレジスタ14g、求
解変数xの値が“0”に極めて近似した際に該変数xを
“0”に仮設定して関数計算を行なうための仮xデータ
レジスタ14h、そして、前記CPU11を中心とする
各種計算処理の過程にて入出力されるデータが一時的に
記憶保持されるワークエリア14i等が備えられる。
【0032】次に、前記構成による電子計算機の動作に
ついて説明する。図2は前記電子計算機のSolveモ
ードにおける関数式「f(x)=0」の基本求解処理を
示すフローチャートである。
【0033】図3は前記電子計算機における関数式「f
(x)=0」の基本求解処理から分岐した第1丸め求解
処理を示すフローチャートである。図4は前記電子計算
機における関数式「f(x)=0」の基本求解処理から
分岐した第2丸め求解処理を示すフローチャートであ
る。
【0034】図5は前記電子計算機における関数式「f
(x)=0」の基本求解処理から分岐したn/m設定求
解処理を示すフローチャートである。図6は前記電子計
算機における関数式「f(x)=0」の基本求解処理か
ら分岐した中点設定求解処理を示すフローチャートであ
る。
【0035】図7は前記電子計算機における関数式「f
(x)=0」の基本求解処理から分岐した初期値自動設
定求解処理を示すフローチャートである。図8は前記電
子計算機による不連続関数式「y=logx」の求解操
作に伴なう表示動作を示す図であり、同図(A)は不連
続関数式「y=logx」とその変数データの入力表示
状態を示す図、同図(B)は求解結果の表示状態を示す
図である。
【0036】キー入力部12のデータ入力キー12aを
選択的に操作して求解したい所望の関数式を入力し、
「Solve」キー12bを操作すると、図2における
基本求解処理が起動される。
【0037】この際、既にキー入力された関数式は、R
AM14内の入力式記憶エリア14bに記憶されてお
り、液晶表示部16に表示されている(図示せず)。す
なわち、キー入力部12aの「Solve」キー12b
が操作されたと判断され、前記RAM14内の入力式記
憶エリア14bに変数を含む式データ(この場合、関数
式)が入力されて記憶されていると判断されると、この
入力式記憶エリア14bに記憶された関数式に含まれる
全ての変数記号が抽出され変数データレジスタ14cに
セットされる(ステップS1→S2→S3)。
【0038】すると、前記RAM14内の変数データレ
ジスタ14cにセットされた変数記号が、液晶表示部1
6に対し、既に表示されている関数式と並んで表示さ
れ、当該変数に対する数値データの入力待ち状態となる
(ステップS4)。
【0039】ここで、カーソルキー12d,12eを操
作して液晶表示部16に表示されている変数記号を表示
カーソルで指定し、データ入力キー12aを操作して数
値データを入力すると、入力された数値データが前記表
示カーソルにより指定された変数記号の前記変数データ
レジスタ14cに記憶される(ステップS5)。
【0040】そして、前記入力表示された関数式「y=
f(x)」の解を求めるために、変数xをカーソル指定
して「Solve」キー12bを操作すると、カーソル
指定されている変数x以外の変数に対応した数値データ
が変数データレジスタ14cから読み出され、関数式
「y=f(x)」に代入される(ステップS7)。
【0041】また、変数xに対応する数値データも変数
データレジスタ14cから読み出され、初期値x0 とし
て関数式に代入される(ステップS8)。すると、前記
関数式「y=f(x)」に代入された初期値x0 に従っ
てf(x)の計算が実行される(ステップS9)。
【0042】この際、初期値x0 はRAM14内の今回
xデータレジスタ14eに記憶され、また、f(x)の
計算結果は今回f(x)データレジスタ14gに記憶さ
れる。
【0043】ここで、エラー(解なし)か否かが判断さ
れ、エラーではないと判断されると、前記ステップS9
にて計算されて今回f(x)データレジスタ14gに記
憶されたf(x)の計算値が“0”か否か、つまり、前
記f(x)の計算に伴ない設定された初期値x0 がその
まま解であるか解でないかが判断される(ステップS1
0→S11)。
【0044】f(x)は“0”ではない、つまり、初期
値x0 は解ではないと判断されると、当該初期値x0 に
基づきニュートン法(図10参照)による「f(x)=
0」の求解演算処理が実行される(ステップS11→S
12)。
【0045】つまり、前記初期値x0 に対応する「f
(x)=0」の接線から新たな初期値x1 が算出され、
この初期値x1 に従って再度f(x)の計算が実行され
る(ステップS13)。
【0046】この際、前記RAM14内の今回xデータ
レジスタ14eに記憶されている前回のf(x)の計算
処理にて設定された初期値x0 は、前回xデータレジス
タ14dに書き換えられて記憶され、今回xデータレジ
スタ14eには、今回のf(x)の計算処理にて設定さ
れた初期値x1 が記憶される。
【0047】これと共に、同RAM14内の今回f
(x)データレジスタ14gに記憶されている前回のf
(x)の計算結果は、前回f(x)データレジスタ14
fに書き換えられて記憶され、今回f(x)データレジ
スタ14gには、今回のf(x)の計算結果が記憶され
る。
【0048】次に、エラー(解なし)か否かが判断さ
れ、エラーではないと判断されると、前記ステップS1
3にて計算されて今回f(x)データレジスタ14gに
記憶されたf(x)の計算値が“0”か否か、つまり、
前記f(x)の計算に伴ない設定された初期値x1 がそ
のまま解であるか解でないかが判断され、又は前回xデ
ータレジスタ14dに記憶されている前回の初期値x0
と今回xデータレジスタ14eに記憶されている今回の
初期値x1 との差(変化量)が一定値以下か否か、つま
り、ニュートン法によって収束されて行く初期値xi の
値が極めて解に近似した値となったかそうではないかが
判断される(ステップ14→S15)。
【0049】f(x)は“0”ではない、つまり、今回
xデータレジスタ14eに記憶されている初期値xi は
解ではないと判断されるか、又は、前回初期値x0 と今
回初期値x1 との変化量は一定値より大きい、つまり、
今回初期値x1 の値は解に近似した値まで収束していな
いと判断されると、今回f(x)データレジスタ14g
に記憶された今回のf(x)の計算値は前回f(x)デ
ータレジスタ14fに記憶されている前回のf(x)の
計算値以下となっているか否か、つまり、前記ニュート
ン法による求解演算処理にて算出される新たな初期値x
i が、求解対象関数式「f(x)=0」において正しく
収束する方向に変化しているか否かが判断される(ステ
ップS15→S16)。
【0050】今回f(x)の計算値は前回f(x)の計
算値以下である、つまり、前記ステップS12の演算処
理にて算出される新たな初期値xi は正しく収束する方
向に変化していると判断されると、RAM14内のカウ
ンタレジスタaのカウント値が(+1)されてカウント
アップされる(ステップS16→S17)。
【0051】そして、前記カウンタレジスタaのカウン
ト値が“30”に到達してないと判断されると、再び前
記ステップS12以降の処理に戻り、今回xデータレジ
スタ14eに記憶されている初期値xi に基づくニュー
トン法による「f(x)=0」の求解演算処理、及びこ
れにより求められた新たな初期値xi に従ったf(x)
の再計算が実行される(ステップS18→S12,S1
3)。
【0052】すなわち、前記ステップS12〜S18の
処理が繰り返されることで、求解対象関数式「f(x)
=0」に対し順次更新されて設定される初期値xi は、
正しく解の方向に収束して行くもので、このニュートン
法による求解演算処理に伴なう繰り返し処理において、
カウンタレジスタaのカウント値が“30”に到達し、
初期値xi の解方向への収束が30回繰り返し行なわれ
たと判断されると、その際に今回xデータレジスタ13
eに記憶されている最新の初期値xi は求解対象関数式
「f(x)=0」の解に近付いたものとして、図3にお
ける第1丸め求解処理に移行し、当該最新の初期値xi
が一定値(“0”に近い極小値)より小さいか否か判断
される(ステップS18→S19)。
【0053】今回xデータレジスタ14eに記憶されて
いる最新の初期値xi は一定値より小さい、つまり、求
解対象関数式「f(x)=0」の解が“0”と推定され
ると、仮xデータレジスタ14hに“0”がセットさ
れ、x=0としてf(x)の計算が実行される(ステッ
プS19→S20)。
【0054】このステップS20におけるf(x)の計
算結果が“0”となり、前記仮xデータレジスタ14h
において“0”丸め処理されてセットされたx値“0”
が正しい解であると判断されると、当該“0”丸め処理
後のx値“0”は今回xデータレジスタ14eに書き換
えられて記憶され、求解対象関数式「f(x)=0」の
解として液晶表示部16に表示される(ステップ21→
S22)。
【0055】一方、前記ステップS19において、今回
xデータレジスタ13eに記憶されている最新の初期値
xi は求解対象関数式「f(x)=0」の解に近付いた
ものの一定値以上あると判断されるか(ステップS19
→NO)、前記ステップS20におけるf(x)の計算
結果が“0”とはならず、仮xデータレジスタ14hに
“0”丸め処理されてセットされたx値“0”は、求解
対象関数式「f(x)=0」の解ではないと判断される
と(ステップS20,S21→NO)、今回xデータレ
ジスタ14eに最新の初期値xi として記憶されている
x値の10桁目が四捨五入されて丸め処理され、この四
捨五入による丸め処理後のx値に基づくf(x)の計算
結果が“0”になるか判断される(ステップS23,S
24)。
【0056】このステップS24において、f(x)の
計算結果が“0”と判断されると、前記四捨五入による
丸め処理後のx値が求解対象関数式「f(x)=0」の
解として液晶表示部16に表示される(ステップS24
→S22)。
【0057】また、前記ステップS24において、f
(x)の計算結果が“0”ではない、つまり、例えば前
記ステップS8にて最初に設定された初期値x0 が大き
い場合に、前記ステップS12〜S18におけるニュー
トン法による求解演算処理に伴なう繰り返し処理を30
回実行しても、今回xデータレジスタ13eに記憶され
た最新の初期値xi は求解対象関数式「f(x)=0」
の解に近付いてないと判断されると、当該最新の初期値
xi は収束途中の解として、求解処理の再実行を促すメ
ッセージと共に液晶表示部16に表示される(ステップ
S24→S25)。
【0058】一方、前記ステップS11において、f
(x)は“0”、つまり、前記ステップS8にて最初に
設定された初期値x0 が解であると判断されるか(ステ
ップS11→NO)、前記ステップS15において、f
(x)は“0”、つまり、今回xデータレジスタ14e
に記憶された初期値xi は解であると判断されるか、又
は、前回初期値x0 と今回初期値xi との変化量は一定
値以下であり、今回初期値xi の値は解に近似した値ま
で収束したと判断されると(ステップS15→NO)、
図4における第2丸め求解処理に移行し、今回xデータ
レジスタ14eに記憶されているx値が一定値(“0”
に近い極小値)より小さいか否か判断される(ステップ
S26)。
【0059】今回xデータレジスタ14eに記憶されて
いるx値は一定値より小さい、つまり、求解対象関数式
「f(x)=0」の解が“0”そのもの又は“0”と推
定されると、仮xデータレジスタ14hに“0”がセッ
トされ、x=0としてf(x)の計算が実行される(ス
テップS26→S27)。
【0060】このステップS27におけるf(x)の計
算結果が“0”となり、前記仮xデータレジスタ14h
において“0”丸め処理されてセットされたx値“0”
が正しい解であると判断されると、当該“0”丸め処理
後のx値“0”は今回xデータレジスタ14eに書き換
えられて記憶され、求解対象関数式「f(x)=0」の
解として液晶表示部16に表示される(ステップ28→
S29)。
【0061】一方、前記ステップS26において、今回
xデータレジスタ13eに記憶されているx値は求解対
象関数式「f(x)=0」の解そのもの又は近似解であ
るものの一定値以上あると判断されるか(ステップS2
6→NO)、前記ステップS27におけるf(x)の計
算結果が“0”とはならず、仮xデータレジスタ14h
に“0”丸め処理されてセットされたx値“0”は、求
解対象関数式「f(x)=0」の解ではないと判断され
ると(ステップS27,S28→NO)、今回xデータ
レジスタ14eに記憶されているx値の10桁目が四捨
五入されて丸め処理され、この四捨五入による丸め処理
後のx値に基づくf(x)の計算結果が“0”になるか
判断される(ステップS30,S31)。
【0062】このステップS31において、f(x)の
計算結果が“0”と判断されると、前記四捨五入による
丸め処理後のx値が求解対象関数式「f(x)=0」の
解として液晶表示部16に表示される(ステップS31
→S29)。
【0063】また、前記ステップS24において、f
(x)の計算結果が“0”ではないと判断されると、前
記四捨五入による丸め処理前のx値がそのまま求解対象
関数式「f(x)=0」の解として液晶表示部16に表
示される(ステップS31→S32)。
【0064】したがって、求解対象関数式「f(x)=
0」が、例えば解が重解となる関数式「図12(C)参
照」である場合には、ニュートン法による求解演算処理
により順次収束されるx値が解の近似値と判定される
と、その10桁目が四捨五入により丸め処理されてf
(x)=0となるか判断され、関数式の解として表示さ
れるので、桁落ちの影響は少なく、より高精度な解が得
られるようになる。
【0065】また、求解対象関数式「f(x)=0」
が、例えば解が“0”となる関数式「図12(D)参
照」である場合には、ニュートン法による求解演算処理
により順次収束されるx値が解“0”の近似値と判定さ
れると、その近似解xは“0”に丸め処理されてf
(x)=0となるか判断され、関数式の解として表示さ
れるので、桁落ちにより収束不能になることなく、真の
解“0”が得られるようになる。
【0066】一方、求解対象関数式「f(x)=0」
が、例えば不連続関数式「図12(A)参照」あるいは
平方関数式「図12(B)参照」である場合に、前記ス
テップS10においてエラー(解なし)、つまり、ステ
ップS8にて最初に設定された初期値x0 が、関数式に
対応しない領域に設定されることで、f(x)の計算結
果が求まらずにエラーと判断されるか(ステップS10
→YES)、前記ステップS14においてエラー(解な
し)、つまり、ニュートン法による求解演算処理にて求
められた新たな初期値xi が、関数式に対応しない領域
に更新設定されることで、f(x)の計算結果が求まら
ずにエラーと判断されると(ステップS14→YE
S)、図6における中点設定求解処理に移行し、カウン
タレジスタdのカウント値が“5”でないと判断され、
当該カウント値dが(+1)されてカウントアップされ
る(ステップS33→S34)。
【0067】すると、前回xデータレジスタ14dに記
憶されている前回の設定初期値xiと今回xデータレジ
スタ14eに記憶されている今回の設定初期値xi との
中点の値が新たな初期値xi として算出されて四捨五入
され、この中点算出による新たな初期値xi に基づくf
(x)の計算が実行される(ステップS35,S36,
S37)。
【0068】そして、f(x)の計算結果がエラー(解
なし)か否か判断される(ステップS38)。例えば求
解対象関数式「f(x)=0」が、不連続関数式「図1
2(A)参照」あるいは平方関数式「図12(B)参
照」である場合に、前記ステップS10においてエラー
(解なし)、つまり、ステップS8にて最初に設定され
た初期値x0 が、関数式に対応しない領域に設定される
ことで、f(x)の計算結果が求まらずにエラーと判断
されて、図6における中点設定求解処理に移行した状態
では(ステップS10→S33〜S38)、前回xデー
タレジスタ14dに記憶されているx値は“0”に初期
設定されているので、今回xデータレジスタ14eに記
憶されているx値との中点算出により得られる新たな初
期値xi は、依然として関数式に対応しない領域に設定
されることになり、ステップS37におけるf(x)の
計算結果は、ステップS38においてエラーと判断され
る。
【0069】すると、再び前記ステップS33以降の処
理に戻り、さらなる中点算出により得られる新たな初期
値xi に基づくf(x)の計算が繰り返される(ステッ
プ38→S33〜S38)。
【0070】この場合に、前記ステップS38において
エラーと判断され、ステップS33〜S37における中
点設定求解処理が繰り返される状態では、前回xデータ
レジスタ14dのx値は“0”のままとなり、順次算出
される初期値xi は当該xデータレジスタ14dのx値
である“0”との中点算出を繰り返し次第に“0”の方
向に移動するものの、前記不連続関数式「図12(A)
参照」あるいは平方関数式「図12(B)参照」に対応
する領域に初期値xi が移動設定されることはないの
で、この中点設定求解処理において5回繰り返しエラー
と判断された時点でカウンタレジスタdの値が“5”に
到達したと判断され、図7における初期値自動設定求解
処理に移行する(ステップS33→S39)。
【0071】すなわち、前記図6における中点設定求解
処理において、求解対象関数式「f(x)=0」に対応
する領域に初期値xi が設定できないまま、図7におけ
る初期値自動設定求解処理に移行すると、カウンタレジ
スタEのカウント値が“10”でないと判断され、RO
M13に予め記憶されている、それぞれ値の異なる多数
の初期値の中の1つの初期値が選択的に読出され、求解
対象関数式「f(x)=0」に対する新たな初期値xi
として自動設定される(ステップS39→S40)。
【0072】こうして、ROM13に予め記憶されてい
る多数の初期値に基づき自動初期値設定がなされると、
カウンタレジスタEのカウント値が(+1)されてカウ
ントアップされた後、その他のカウンタレジスタa〜d
のカウント値が全てクリアされ、再び図2におけるステ
ップS9以降の処理に戻り、まず、前記ステップS40
にて自動設定された初期値xi に基づくf(x)の計算
が実行される(ステップS41,S42→S9)。
【0073】そして、前記自動設定された初期値xi に
基づくf(x)の計算結果がエラーとはならず、f
(x)=0となりその設定初期値xi そのものが解であ
ると判断された場合(ステップS11→NO)、あるい
はニュートン法を用いた求解演算処理(ステップS12
〜S18)に移行してf(x)=0又は設定初期値xi
の更新変化量が一定値以下となり、今回の設定初期値x
i そのものが解である又は今回の設定初期値xi が解の
近似値であると判断された場合には(ステップS15→
NO)、前記図4における第2丸め求解処理に移行し、
今回xデータレジスタ14eに記憶されている今回設定
初期値xi は、四捨五入あるいは“0”丸め処理を経て
解として液晶表示部16に表示されるようになる(ステ
ップS26〜S32)。
【0074】また、前記自動設定された初期値xi に基
づくf(x)の計算結果がエラーとはならずに、ニュー
トン法を用いた求解演算処理(ステップS12〜S1
8)に移行して、f(x)の計算値が正しく収束される
状態での新たな初期値xi の更新設定処理が30回繰り
返されたと判断された場合には(ステップS18→YE
S)、図3における第1丸め求解処理に移行し、今回x
データレジスタ14eに記憶されている今回設定初期値
xi は、四捨五入あるいは“0”丸め処理を経て解とし
て液晶表示部16に表示されるか、又は収束値途中の解
として表示されるようになる(ステップS19〜S2
5)。
【0075】なお、前記ステップS10あるいはS14
にて、f(x)の計算結果が再びエラーとなり、図6に
おける中点設定求解処理を経て、図7における初期値自
動設定処理において自動的に初期値xi を設定する処理
が10回繰り返し行なわれても、依然としてf(x)の
計算結果がエラーと判断された場合には、カウンタレジ
スタEのカウント値が“10”に到達したと判断され、
液晶表示部16に対しエラーメッセージが表示される
(ステップS39→S43)。
【0076】一方、例えば求解対象関数式「f(x)=
0」が、不連続関数式「図12(A)参照」あるいは平
方関数式「図12(B)参照」である場合に、前記ステ
ップS14においてエラー(解なし)、つまり、ステッ
プS8にて最初に設定された初期値x0 に基づくf
(x)の計算結果がエラーでなく、ニュートン法による
求解演算処理に移行した際に(ステップS10→S11
→S12)、前記最初の設定初期値x0 に基づき新たに
設定された初期値xi が、関数式に対応しない領域に設
定されてしまうことで、f(x)の計算結果が求まらず
にエラーと判断され、図6における中点設定求解処理に
移行した状態では(ステップS13,S14→S33〜
S38)、前回xデータレジスタ14dに記憶されてい
るx値は、前記ユーザ操作による最初の初期値x0 に設
定されているので、今回xデータレジスタ14eに記憶
されている前記エラー判断の基となったx値との中点算
出により得られる新たな初期値xi は、前記最初の初期
値x0 の方向に1/2だけ引き戻されるようになる。
【0077】この場合に、前記図6における中点設定求
解処理が繰り返される状態で、カウンタレジスタdのカ
ウント値が“5”に到達する以前の段階で、順次中点算
出により前記最初の初期値x0 の方向に引き戻された初
期値xi が、関数式に対応する領域に移動設定された際
には、当該初期値xi に基づくf(x)の計算値はエラ
ーではないと判断されるので(ステップS39→N
O)、前記ステップS11以降の処理に復帰する。
【0078】そして、f(x)=0と判断された場合に
は(ステップS11→NO)、そのまま図4における第
2丸め処理に移行して四捨五入あるいは“0”丸め処理
による解表示処理が行なわれ、また、f(x)は“0”
でないと判断された場合でも(ステップS11→YE
S)、ステップS12〜S18におけるニュートン法に
よる求解演算処理を経て、前記図3における第1丸め処
理あるいは前記図4における第2丸め処理に移行し、四
捨五入あるいは“0”丸め処理による解表示処理が行な
われるようになる。
【0079】なお、求解対象関数式「f(x)=0」
が、前記平方関数式「図12(B)参照」である場合
に、前記ステップS14におけるf(x)のエラー判断
に伴ない、図6における中点設定求解処理に移行した
際、つまり、ステップS8における最初の初期値x0 は
当該平方関数式に対応する領域内に設定されていたもの
の、ステップS12における前記最初の初期値x0 に基
づくニュートン法による求解演算処理にて新たに求めら
れた初期値xi が、当該平方関数式に対応しない領域に
移動設定され、この新たな初期値xi に基づくf(x)
の計算値がエラーと判断されて図6における中点設定求
解処理に移行した際には、その中点算出により得られる
新たな初期値xi は前記平方関数式の解となる(仮定で
きる)ので、中点算出による初期値xi を四捨五入した
f(x)の計算値はエラーではないと判断され(ステッ
プS38→NO)、前記ステップS11以降の処理に復
帰する。
【0080】よって、この場合には、図4における第2
丸め処理を経て解表示処理が行なわれるようになる。し
たがって、求解対象関数式「f(x)=0」が、例えば
不連続関数式「図12(A)参照」あるいは平方関数式
「図12(B)参照」である場合には、初期値x0 が当
該関数式に対応しない領域に設定されることでエラーと
なったとしても、中点算出による設定初期値の引き戻し
求解処理(図6参照)や初期値の自動設定求解処理(図
7参照)によって、関数式に対応する領域に初期値xi
が設定し直され、この後、ニュートン法による求解演算
処理(ステップS12〜S18参照)から第1丸め処理
(図3参照)あるいは第2丸め処理(図4参照)を経て
関数式の解が表示されるので、例えば図8に示すよう
に、ユーザ入力による最初の初期値x0 が不連続関数式
「y=logx」の対応領域外に設定されても、その解
「x=1」として、確実に高精度な解が得られるように
なる。
【0081】しかも、前記平方関数式「図12(B)参
照」の場合に、最初の初期値x0 が当該関数式に対応す
る領域に設定され、この最初の初期値x0 に基づくニュ
ートン法の求解演算処理により得られた新たな初期値x
i が前記関数式の対応領域外に設定されることでエラー
となった際には、中点設定求解処理(図6参照)により
前記x0 とxi との中点として得られた新たな設定初期
値xi が、そのまま解と仮定され、第2丸め処理(図4
参照)を経て関数式の解が表示されるので、より簡単な
処理により確実に高精度な解が得られるようになる。
【0082】一方、求解対象関数式「f(x)=0」
が、例えば逆正接関数式「図12(E)参照」あるいは
これに近似した特性の3乗根関数式である場合に、前記
ステップS16において(NO)、つまり、求解変数x
に代入すべき初期値xi がy値の殆ど変化しない関数領
域に設定されることで、その接線に基づき設定される新
たな初期値xi が正負反対側でより大きな値となり、前
回f(x)データレジスタ14fに記憶されている前回
の初期値xi に基づくf(x)の計算値よりも今回f
(x)データデータレジスタ14gに記憶された新たな
初期値xi に基づくf(x)の計算値の方が大きくなっ
てしまい、解の方向に収束しない状態であると判断され
ると、図5におけるn/m設定求解処理に移行し、カウ
ンタレジスタbのカウント値が“40”でないと判断さ
れると共に、カウンタレジスタcのカウント値が“2
0”でないと判断され、当該カウント値cが(+1)さ
れてカウントアップされる(ステップS44→S45,
S46)。
【0083】すると、今回xデータレジスタ14eに記
憶されているx値が、3/4倍とされて新たな初期値x
i が算出され、当該初期値xi の設定位置がy値の変化
が急峻な関数領域の方向へ引き戻される(ステップS4
7)。
【0084】そして、前記3/4倍で引き戻された新た
な初期値xi に基づきf(x)の計算処理が実行され、
その計算結果がエラー(解なし)か否か判断される(ス
テップS48,S49)。
【0085】ここで、f(x)の計算結果がエラーでな
いと判断されると、当該今回のf(x)の計算値は前回
のf(x)の計算値以下であるか否か、つまり、前記3
/4倍で引き戻された新たな初期値xi がy値の変化が
急峻な関数領域の方向に引き戻されて設定されたか否か
判断される(ステップS49→S50)。
【0086】前記ステップS49において、f(x)の
計算結果がエラーと判断された場合、あるいは前記ステ
ップS50において、前回のf(x)の計算値よりも今
回のf(x)の計算値の方が依然として大きく、今回x
データレジスタ14eに記憶された新たな初期値xi は
y値の変化が急峻な関数領域の範囲内に引き戻されてな
い(解の方向へ収束していない)と判断された場合に
は、再びステップS45以降の処理に戻り、前記今回x
データレジスタ14eに記憶された初期値xi が、さら
に3/4倍処理されてy値の変化が急峻な関数領域の方
向に引き戻される(ステップS49orS50→S4
5)。
【0087】こうして、前記ステップS45〜S50に
おける初期値xi の3/4倍引き戻し処理が繰り返し行
なわれる状態で、カウンタレジスタcのカウント値が
“20”に到達したと判断されると、この3/4倍引き
戻し処理に基づく初期値xi の解方向への収束は困難と
判定され、前記図7おける初期値自動設定求解処理に移
行する(ステップS45→S39)。
【0088】そして、この初期値自動設定求解処理を経
て、初期値xi が、y値の変化が急峻な関数領域の範囲
内に自動設定され、ステップS12〜S18におけるニ
ュートン法による求解演算処理や図3における第1丸め
処理あるいは図4における第2丸め処理を経て、解に収
束されて表示されるようになる。
【0089】一方、前記ステップS45〜S50におけ
る初期値xi の3/4倍引き戻し処理が繰り返し行なわ
れることで、今回のf(x)の計算値が前回のf(x)
の計算値以下となり、当該初期値xi が解へ収束する方
向に変化して設定されたと判定されると、カウンタレジ
スタbのカウント値が(+1)されてカウントアップさ
れ、前記ステップS11以降の処理に復帰する(ステッ
プS50→S51→S11)。
【0090】すると、ステップS12〜S18における
ニュートン法による求解演算処理を経て、前記図3にお
ける第1丸め処理あるいは前記図4における第2丸め処
理に移行し、四捨五入あるいは“0”丸め処理による解
表示処理が行なわれるようになる。
【0091】一方、前記図5における3/4倍引き戻し
処理を経て、初期値xi が収束する方向に変化設定さ
れ、ステップS11以降の処理に復帰した場合でも、例
えばステップS12〜S18におけるニュートン法によ
る求解演算処理を行なう仮定で、ステップS16におい
て再び前回のf(x)の計算値よりも今回のf(x)の
計算値の方が大きいと判断され、今回xデータレジスタ
14gに記憶された初期値xi が解に収束しない方向に
変化したと判定された場合には、再度図5におけるn/
m設定求解処理に移行し、初期値xi を解に収束する方
向に変化させるための3/4倍引き戻し処理が実行され
る(ステップS16→S44〜S51→S11)。
【0092】そして、ステップS44において、カウン
タレジスタbのカウント値が“40”に到達したと判断
されると、初期値xi を真の解へ収束させることは困難
と判定され、図3における第1丸め処理に移行し、例え
ばその時点での今回xデータレジスタ14eに記憶され
ている初期値xi の10桁目が四捨五入された後、収束
途中の解として、求解処理の再実行を促すメッセージと
共に液晶表示部16に表示される(ステップS44→S
19→S23,S24→S25)。
【0093】したがって、求解対象関数式「f(x)=
0」が、例えば逆正接関数式「図12(E)参照」ある
いはこれに近似した特性の3乗根関数式である場合に
は、最初に設定される初期値xi がy値の殆ど変化しな
い関数領域に設定されることで、ニュートン法による求
解演算処理(ステップS12〜S18)においてf
(x)の計算値が次第に大きくなり解に収束しない状態
となったとしても、初期値xi の3/4倍引き戻しによ
る求解処理(図5参照)や初期値自動設定求解処理(図
7参照)によって、当該初期値xi はy値の変化が急峻
な関数領域に設定し直されて解に収束する方向に修正さ
れ、この後、ニュートン法による再求解演算処理(ステ
ップS12〜S18参照)から第1丸め処理(図3参
照)あるいは第2丸め処理(図4参照)を経て関数式の
解が表示されるので、例えばユーザ入力による最初の初
期値x0 の設定位置が何処であるかに拘らず、確実に高
精度な解が得られるようになる。
【0094】図9は前記電子計算機の求解処理による収
束途中での再求解操作に伴なう表示動作を示す図であ
り、同図(A)は収束途中の解表示状態を示す図、同図
(B)は再求解結果の表示状態を示す図である。
【0095】前記図3における第1丸め処理に移行した
際に、そのステップS25において収束途中の解表示が
行なわれた場合には、「EXE」キー12cを操作する
ことで、再度求解処理が実行され真の解への収束が図ら
れるようになる。
【0096】なお、前記実施の形態では、求解対象関数
式を不連続関数式「図12(A)参照」、平方関数式
「図12(B)参照」、解が重解となる関数式「図12
(C)参照」、「解が“0”となる関数式「図12
(D)参照」、逆正接関数式「図12(E)参照」ある
いは3乗根関数式とし、そのそれぞれの求解処理につい
て説明したが、その他あらゆる関数式に対しても、前記
同様の求解処理を実行することで、確実且つ高精度な解
が得られるようになる。
【0097】
【発明の効果】以上のように、本発明の請求項1に係わ
る電子計算機によれば、求解手段によって関数式の解の
近似値が求められた際には、この近似値の丸め処理が行
なわれ、この丸め処理後の値が関数式の解であるか否が
判断され、解であると判断された場合には、その値が関
数式の解として表示されるので、例えば解が重解となる
関数式をニュートン法を用いて求解した場合の丸め処理
にはn桁目以降の四捨五入処理を行ない、また、例えば
解が“0”となる関数式をニュートン法を用いて求解し
た場合の丸め処理には“0”丸め処理を行なうことで、
より高精度な解が得られるようになる。
【0098】また、本発明の請求項5に係わる電子計算
機によれば、ニュートン法を用いた求解手段によって関
数式の解を求める際には、関数式の変数に代入されて使
用される初期値が、初期値記憶手段に記憶された複数の
初期値の中から読み出されて設定され、この設定された
初期値による求解処理においてエラー(解なし)となっ
た場合には、前記初期値記憶手段から新たな初期値が読
み出されて設定され、前記求解手段による求解処理毎に
自動的な初期値設定がなされて関数式の解が求められる
ので、例えば不連続関数式をニュートン法を用いて求解
した場合には、関数式の存在する領域に初期値xi が自
動設定され、確実に解が得られるようになる。
【0099】また、本発明の請求項7に係わる電子計算
機によれば、ニュートン法を用いた求解手段によって関
数式の解を求める際に、初期値設定手段により設定され
た初期値に基づく求解処理中において、関数式の途中解
が求められた後、次の求解処理においてエラー(解な
し)となった際には、前回の求解処理にて設定使用され
た初期値と今回の求解処理にて設定使用された初期値と
の中間値が算出され関数式の解として表示されるので、
例えば平方関数式をニュートン法を用いて求解した場合
には、途中解求解後のエラー発生時における前回初期値
と今回初期値との中間値をもって、確実に解が得られる
ようになる。
【0100】また、本発明の請求項9に係わる電子計算
機によれば、ニュートン法を用いた通常求解手段によっ
て関数式の解を求める際に、初期値設定手段により設定
された初期値に基づく求解処理中において、前回の求解
処理にて設定使用された初期値による関数式の計算値の
絶対値よりも今回の求解処理にて設定使用された初期値
による関数式の計算値の絶対値が大きくなった際には、
前回の初期値又は今回の初期値のうちどちらか一方をn
/m(n<m)倍した値が新たな初期値として設定さ
れ、このn/m値で設定された初期値に基づくn/m求
解手段による求解処理中に今回の求解処理にて設定使用
された初期値による関数式の計算値が前回の求解処理に
て設定使用された初期値による関数式の計算値以下とな
った際には、前記通常求解手段に戻して関数式の解が求
められるので、例えば逆正接関数式や3乗根関数式をニ
ュートン法を用いて求解した場合には、解が収束する範
囲内に初期値が誘導され、確実に解が得られるようにな
る。よって、本発明によれば、関数式の求解性能を向上
することが可能になる電子計算機を提供できる。
【図面の簡単な説明】
【図1】本発明の実施形態に係わる電子計算機の電子回
路の構成を示すブロック図。
【図2】前記電子計算機のSolveモードにおける関
数式「f(x)=0」の基本求解処理を示すフローチャ
ート。
【図3】前記電子計算機における関数式「f(x)=
0」の基本求解処理から分岐した第1丸め求解処理を示
すフローチャート。
【図4】前記電子計算機における関数式「f(x)=
0」の基本求解処理から分岐した第2丸め求解処理を示
すフローチャート。
【図5】前記電子計算機における関数式「f(x)=
0」の基本求解処理から分岐したn/m設定求解処理を
示すフローチャート。
【図6】前記電子計算機における関数式「f(x)=
0」の基本求解処理から分岐した中点設定求解処理を示
すフローチャート。
【図7】前記電子計算機における関数式「f(x)=
0」の基本求解処理から分岐した初期値自動設定求解処
理を示すフローチャート。
【図8】前記電子計算機による不連続関数式「y=lo
gx」の求解操作に伴なう表示動作を示す図であり、同
図(A)は不連続関数式「y=logx」とその変数デ
ータの入力表示状態を示す図、同図(B)は求解結果の
表示状態を示す図。
【図9】前記電子計算機の求解処理による収束途中での
再求解操作に伴なう表示動作を示す図であり、同図
(A)は収束途中の解表示状態を示す図、同図(B)は
再求解結果の表示状態を示す図。
【図10】ニュートン法による関数式y=f(x)の解
の求め方を示す図。
【図11】従来のSolve機能を有する電子計算機の
不連続関数式の求解操作に伴なう表示動作を示す図。
【図12】各種関数式とその解をグラフ化して示す図で
あり、同図(A)は不連続関数式の一例を示す図、同図
(B)は平方関数式の一例を示す図、同図(C)は重解
となる関数式の一例を示す図、同図(D)は解が“0”
となる関数式の一例を示す図、同図(E)は逆正接関数
式の一例を示す図。
【符号の説明】
11 …CPU、 12 …キー入力部、 12a…データ入力キー、 12b…「Solve」キー、 12c…「EXE」キー、 12d〜12g…カーソルキー、 13 …ROM、 14 …RAM、 14a…表示レジスタ、 14b…入力式記憶レジスタ、 14c…変数データレジスタ、 14d…前回xデータレジスタ、 14e…今回xデータレジスタ、 14f…前回f(x)データレジスタ、 14g…今回f(x)データレジスタ、 14h…仮xデータレジスタ、 14i…ワークエリア、 a,b,c,d,E…カウンタレジスタ、 15 …表示駆動回路、 16 …液晶表示部。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 関数式を入力する式入力手段と、 この式入力手段により入力された関数式の解を特定の法
    則に従って求める求解手段と、 この求解手段によって前記関数式の解の近似値が求めら
    れた際、この近似値の丸め処理を行なう丸め手段と、 この丸め手段により丸め処理された値が前記関数式の解
    であるか否かを判断する判断手段と、 この判断手段により前記丸め手段により丸め処理された
    値が前記関数式の解であると判断された際、前記丸め処
    理された値を前記関数式の解として表示する解表示手段
    とを具備したことを特徴とする電子計算機。
  2. 【請求項2】 前記求解手段は、前記式入力手段により
    入力された関数式の解をニュートン法に従って求める求
    解手段であることを特徴とする請求項1記載の電子計算
    機。
  3. 【請求項3】 前記丸め手段は、前記関数式の解の近似
    値が求められた際、この近似値を四捨五入して丸め処理
    する丸め手段であることを特徴とする請求項1又は請求
    項2記載の電子計算機。
  4. 【請求項4】 前記丸め手段は、前記関数式の解の近似
    値が求められた際、この近似値が“0”に近い場合に
    は、当該近似値を“0”に丸める“0”丸め手段を備え
    た丸め手段であることを特徴とする請求項1又は請求項
    2記載の電子計算機。
  5. 【請求項5】 関数式を入力する式入力手段と、 この式入力手段により入力された関数式の解をニュート
    ン法に従って求める求解手段と、 この求解手段によって前記関数式の解を求める際に、当
    該関数式の変数に代入して使用される初期値を複数記憶
    する初期値記憶手段と、 この初期値記憶手段に記憶された複数の初期値から1つ
    の初期値を読み出し、前記求解手段に対し前記関数式の
    変数に代入して使用される初期値として設定する初期値
    設定手段と、 この初期値設定手段により前記求解手段に設定された初
    期値による求解処理においてエラー(解なし)となった
    場合に、前記初期値設定手段により新たな初期値を設定
    させる求解制御手段とを具備し、 前記求解手段は、前記初期値設定手段によって設定され
    た初期値で前記関数式の解を求めることを特徴とする電
    子計算機。
  6. 【請求項6】 さらに、前記求解手段によって前記関数
    式の解を求める際に、当該関数式の変数に代入して使用
    される初期値を使用者により入力する初期値入力手段
    と、 この初期値入力手段により入力された初期値を、前記求
    解手段に対し前記関数式の変数に代入して使用される初
    期値として設定する入力初期値設定手段とを備え、 前記求解制御手段は、前記入力初期値設定手段により前
    記求解手段に設定された初期値による求解処理において
    エラー(解なし)となった場合に、前記初期値設定手段
    により新たな初期値を設定させる求解制御手段であるこ
    とを特徴とする請求項5記載の電子計算機。
  7. 【請求項7】 関数式を入力する式入力手段と、 この式入力手段により入力された関数式の解を求める際
    に、当該関数式の変数に代入して使用される初期値を設
    定する初期値設定手段と、 この初期値設定手段により設定された初期値に基づき前
    記式入力手段により入力された関数式の解をニュートン
    法に従って求める求解手段と、 この求解手段による求解処理中に前記関数式の途中解が
    求められた後、次の求解処理においてエラー(解なし)
    となった際に、前回の求解処理にて設定使用された初期
    値と今回の求解処理にて設定使用された初期値との中間
    値を算出する中点算出手段と、 この中点算出手段により算出された中間値を前記関数式
    の解として表示する解表示手段とを具備したことを特徴
    とする電子計算機。
  8. 【請求項8】 さらに、前記中点算出手段によって算出
    された中間値の丸め処理を行なう丸め手段と、 この丸め手段により丸め処理された値が前記関数式の解
    であるか否かを判断する判断手段とを備え、 前記解表示手段は、前記判断手段により前記丸め手段に
    より丸め処理された値が前記関数式の解であると判断さ
    れた際、該値を前記関数式の解として表示する解表示手
    段であることを特徴とする請求項7記載の電子計算機。
  9. 【請求項9】 関数式を入力する式入力手段と、 この式入力手段により入力された関数式の解を求める際
    に、当該関数式の変数に代入して使用される初期値を設
    定する初期値設定手段と、 この初期値設定手段により設定された初期値に基づき前
    記式入力手段により入力された関数式の解をニュートン
    法に従って求める通常求解手段と、 この通常求解手段による求解処理中に前回の求解処理に
    て設定使用された初期値による関数式の計算値の絶対値
    よりも今回の求解処理にて設定使用された初期値による
    関数式の計算値の絶対値が大きくなった際に、該前回の
    初期値又は今回の初期値のうちどちらか一方をn/m
    (n<m)倍した値を新たな初期値として設定するn/
    m値設定手段と、 このn/m値設定手段により設定された初期値に基づき
    前記関数式の解をニュートン法に従って求めるn/m求
    解手段と、 このn/m求解手段による求解処理中に今回の求解処理
    にて設定使用された初期値による関数式の計算値が前回
    の求解処理にて設定使用された初期値による関数式の計
    算値以下となった際に、前記通常求解手段に戻して前記
    関数式の解を求める求解制御手段とを具備し、 前記通常求解手段及びn/m求解手段を併用した求解処
    理により前記関数式の解を求めることを特徴とする電子
    計算機。
  10. 【請求項10】 さらに、前記通常求解手段によって前
    記関数式の解の近似値が求められた際、この近似値の丸
    め処理を行なう丸め手段と、 この丸め手段により丸め処理された値が前記関数式の解
    であるか否かを判断する判断手段と、 この判断手段により前記丸め手段により丸め処理された
    値が前記関数式の解であると判断された際、該値を前記
    関数式の解として表示する解表示手段とを備えたことを
    特徴とする請求項9記載の電子計算機。
JP7338995A 1995-12-26 1995-12-26 電子計算機 Pending JPH09179725A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7338995A JPH09179725A (ja) 1995-12-26 1995-12-26 電子計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7338995A JPH09179725A (ja) 1995-12-26 1995-12-26 電子計算機

Publications (1)

Publication Number Publication Date
JPH09179725A true JPH09179725A (ja) 1997-07-11

Family

ID=18323279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7338995A Pending JPH09179725A (ja) 1995-12-26 1995-12-26 電子計算機

Country Status (1)

Country Link
JP (1) JPH09179725A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015197814A (ja) * 2014-04-01 2015-11-09 キヤノン株式会社 演算装置、演算方法、及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015197814A (ja) * 2014-04-01 2015-11-09 キヤノン株式会社 演算装置、演算方法、及びプログラム

Similar Documents

Publication Publication Date Title
AU2010200591B2 (en) Graph display control apparatus and graph display control method
JPH06309177A (ja) マイクロコンピュータ
JPH05307524A (ja) 関数電卓
JPH09179725A (ja) 電子計算機
JP5392270B2 (ja) 電子式計算機
JP4547774B2 (ja) グラフ表示制御装置、及び記憶媒体
JP3252493B2 (ja) 電子式計算機及びその計算処理方法
JP3975595B2 (ja) 電子計算装置及び計算処理プログラムを記録した記録媒体
JP2738594B2 (ja) 電子計算機
JP7797813B2 (ja) 計算機及び計算プログラム
JP2006099256A (ja) 演算制御装置及びプログラム
JP2008250438A (ja) 数式演算装置および数式演算プログラム
JP2001350731A (ja) 計算装置、及び記憶媒体
JP7192914B2 (ja) 計算装置、計算支援方法及びプログラム
JPH04235658A (ja) グラフ表示制御装置及びグラフ表示制御方法
JP2000132516A (ja) 計算装置及び記憶媒体
JP2011186771A (ja) 演算装置及びプログラム
JP3498323B2 (ja) 電子式計算機及び演算処理方法
JP3786141B2 (ja) 電子計算機および検算制御方法
JP2526181Y2 (ja) 小型電子式計算機
JPH09231176A (ja) 電子計算機
JP4135257B2 (ja) 計算装置
JP4780006B2 (ja) 電子式計算機
JP2700960B2 (ja) 電子式卓上計算機
JP2000036054A (ja) グラフ表示制御装置及び記憶媒体