(57)【要約】【課題】  一般的な電子計算機では対数の精密な計算が容易に行えない問題があった。四則計算用の演算キーや等号キー、そして小数点入力キーのみ設けた一般的な電子計算機に必要最小限の機能を設けて対数の精密な計算が容易に行えられる電子計算機を提供する。又、累乗などの桁数が極めて大きい数の桁数及び上位の複数の位に入る数字の確定も容易に行えるようにする。【解決手段】  小数点を移動する小数点移動キーを設け、前記小数点移動キーを押すと、表示中の数値を正規化して仮数部に入る数を表示し、小数点の移動後に計算する際に移動後の数を用いて計算することを特徴とする。そして、桁数が極めて大きい数の桁数及び上位の複数の位に入る数字の確定や対数の計算を容易にする。【特許請求の範囲】
【請求項１】
小数点を移動する小数点移動キーを設け、二桁以上の整数又は整数部分が二桁以上の小数を表示した際に前記小数点移動キーを押した場合、最高位とそれより一つ下位の位との間に小数点を移動し、一桁の整数又は整数部分が一桁の小数を表示した際に前記小数点移動キーを押した場合には、小数点の表示は不変のまま保持し、小数点の移動後に計算する際に移動後の数を用いて計算することを特徴とする電子計算機。
【請求項２】
整数を表示する際に小数点を表示しない電子計算機において、二桁以上の整数を表示したときに少数点移動キーを押すと、最高位とそれより一つ下位の位との間に小数点を表示することを特徴とする請求項１に記載の電子計算機。
【請求項３】
整数若しくは整数部分が二桁以上の小数又は整数部分が一桁かつ整数部分の位の個数と小数部分の位の個数の和が許容桁数より小さい小数を表示した際に押した場合、その数を１０で割った商を表示し、整数部分が一桁かつ整数部分の位の個数と小数部分の位の個数の合計が許容桁数と等しい小数を表示した際に押した場合には、前記小数の表示された位の数字のうち右端の位の数字を削除してなる数を１０で割った商を表示する小数点左移キーを設け、桁数が許容桁数より小さい整数又は小数を表示した場合に押すと、その数に１０を乗じた積を表示する小数点右移キーを設け、小数点の移動後に計算する際には移動後の数を用いて計算することを特徴とする請求項１又は請求項２に記載の電子計算機。
【請求項４】
小数点移動キーを押して小数点を移動すると、左に移動した場合に移動して飛び越えた位の個数を絶対値とする正の数であり、右に移動した場合には移動して飛び越えた位の個数を絶対値とする負の数である越位数を表示することを特徴とする請求項１又は請求項２に記載の電子計算機。
【請求項５】
越位数の表示後に小数点移動キーを押す又は数秒間経過すると越位数を消去して小数点を移動した後の数を表示し、以後、前記小数点移動キーを押すと前記移動後の数を消去して前記越位数を表示することと、前記小数点移動キーを押す又は数秒間経過すると前記越位数を消去して前記移動後の数を表示することを繰り返すことを特徴とする請求項４に記載の電子計算機。
【請求項６】
表示している数の位の個数が許容桁数と等しく、かつそれらの位の数字のすべてが９である整数以外の場合、表示している数の最も上位の位から数えて位の個数が許容桁数と等しい位置に存在する位に１が入り、かつ０以外の数字が入る位が存在しない数を加え、その和における最も上位の位とそれより一つ下位の位との間に小数点を移動し、表示している数の位の個数が許容桁数と等しく、かつそれらの位の数字のすべてが９である整数の場合には、表示は不変のまま保持する加算後移動キーを設け、前記加算後移動キーを押して計算する際には小数点の移動後の数を用いて計算することを特徴とする請求項４又は請求項５に記載の電子計算機。
【請求項７】
１０を基数とする指数部に入る数を入力する指数キーを設け、仮数部の入力後に前記指数キーを押した後に前記指数部に入る数を入力し、演算キーで計算する際には仮数部同士の計算を行う一方で、指数部の計算も行うことを特徴とする請求項１、請求項２、請求項４、請求項５又は請求項６に記載の電子計算機。
【請求項８】
四則計算用の演算キー以外に小数点を移動するキーと許容桁数を満たす最小の位までに切り上げるキーを設けた電子計算機であって、桁数の大きな数の桁数及び上位の位に入る数字並びに対数の計算を精密に計算することを特徴とする請求項１、請求項２、請求項４、請求項５、請求項６又は請求項７に記載の電子計算機。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、対数及び累乗、あるいは桁数の大きい数の掛け算のせきの桁数や上位の位の数字などの計算をし易い電子計算機に関するものである。
【背景技術】
【０００２】  従来は、学者や技術者等が用いる特殊な電子計算機、いわゆる関数電卓でない限り、一般的な簡易電子計算機、いわゆる電卓等では、累乗などの桁数の大きい数の計算は困難であり、まして対数の精密な計算はできなかった。
【発明の概要】
【発明が解決しようとする課題】
【０００３】  自然科学で指数表記と呼ばれる方法を用いて、桁数が大きい数や、逆に非常に小さい数を表記することがよくある。その際、指数部を増減するとともに仮数部の整数部分を一桁とする、つまり正規化することがよくある。１０を基数とすることが多く、その際に一般的な簡易電子計算機で計算する際には１０の累乗で割って小数点を所定の位置に移動することになる。本発明は、特殊な電子計算機である関数電卓等でなく一般的な電子計算機、いわゆる電卓等に必要最小限の機能を加えただけで正規化などの負担を大幅に軽減し、入力ミスを防止するためになされたものである。そして、累乗などの桁数の大きい数の計算が容易に行えるようになる。その上、一般の電子計算機にもかかわらず対数の精密な計算が容易にできるようになる。
【課題を解決するための手段】
【０００４】  請求項１に記載の電子計算機は、上述した指数表記においての正規化をする際に便利な電子計算機である。請求項１に記載の電子計算機は、小数点を移動する小数点移動キーを設けたもので、二桁以上の整数又は整数部分が二桁以上の小数を表示した際に前記小数点移動キーを押した場合、最高位とそれより一つ下位の位との間に小数点を移動する。一桁の整数又は整数部分が一桁の小数を表示した際に前記小数点移動キーを押した場合には、小数点の表示は不変のまま保持する。そして、小数点の移動後に計算する際に移動後の数を用いて計算することを特徴とする。【０００５】  ところで、一般的な電子計算機には、通常、演算キーは四則計算用の｛×｝キー、｛÷｝キー、｛＋｝キー、｛−｝キー、そして等号キーである｛＝｝キーのみか、これらに加えて平方根を計算する｛√｝キーが設けられているのみであることがほとんどである。本発明は、ここに挙げた演算キー以外の演算キーを必要とせず、｛√｝キーとも無関係である。｛Ｍ＋｝キーや｛Ｍ−｝キーなどのメモリー計算を行うキーも特に必要としない。なお、一般的な電子計算機のほとんどは、許容桁数が８桁、１０桁、そして１２桁のいずれかである。以下、許容桁数が１２で四則計算用のキーと等号キー以外の演算キーを基本的には設けていない一般的な簡易電子計算機、いわゆる電卓等に必要最小限の機能を加えることを前提とする。小数点移動キーを設けていない従来の一般的な電子計算機でも、１０の累乗で割って小数点の位置を変えれば、手間や時間がかかるものの、対数や桁数の大きい数の桁数などを計算できる。その際に、発明者が使用している従来の電子計算機、いわゆる電卓は、２００４年のＣａｎｏｎ製で機種はＬＳ−１２１ＴＵである。その許容桁数は１２である。【０００６】  実は、電子計算機のメーカーや機種によるが、四則計算用の｛×｝キー、｛÷｝キー、｛＋｝キー、｛−｝キー、そして｛＝｝キーのみの演算キーしか設けていない一般的な簡易電子計算機であっても、それらのキーのみを使って一般の人にほとんど知られていない計算が幾つかできる。まず、それらの計算について述べる。なお、電子計算機に入力する具体的手順を表記する際、例えば２に３を掛ける際、［２］→［×］→［３］→［＝］と表記するとする。数字や小数点については、続けて入力する際には、特に分ける理由がなければ、［９．８７６５４］のように一つにまとめて表記するとする。【０００７】  例えば、２の累乗を計算する際、通常どおりに入力すると、次のようになる。［２］→［×］→［２］→［×］→［２］→［×］→……→［×］→［２］→［＝］。勿論、このように入力してもよいが、［２］の入力のうちで最初のもの以外の入力を省き、更に、［×］の入力のうちで最初のもの以外の入力も省いてその代わりに｛＝｝キーを押す、つまり［２］→［×］→［＝］→［＝］→［＝］→……→［＝］と入力しても計算できる。ただし、最初の［＝］の入力の際の計算で２乗の計算をし、それ以後１乗づつ増えるから、［＝］の入力回数は指数より１小さい。例えば、４乗の計算のとき、［＝］の入力は３回でよい。このように入力すると、特に、桁が多いときに数字を入力する時間や手間が省くことができるばかりか、入力ミスの防止にもなる。累乗又は他の計算を行ったときの計算結果が表示されたときにおいて、［×］の入力を一回行った後で［＝］の入力を一回又は複数回行うと、前記計算結果の累乗として計算される。例えば、［２］→［×］→［＝］→［＝］→［＝］→［×］→［＝］→［＝］と入力すると、２の４乗の立方、すなわち２の１２乗の４０９６が計算結果として表示される。なお、電子計算機のメーカーや機種により、この計算ができないものもあるが、ここではこの計算が可能な電子計算機を用いることを前提とする。【０００８】  ところが、整数の累乗は桁数がすぐに大きくなり、すぐに許容桁数を越える。すると、Ｅなどのエラー表示が出て計算の継続ができなくなる。しかし、整数部分の桁数が小さい小数を底とする累乗であれば、この限りではない。整数部分の桁数が許容桁数を越えない限り、計算の継続が可能である。例えば、８８８を累乗すると、５乗しただけで許容桁数を越え計算の継続ができないが、８．８８を５乗すると、整数部分の桁数が許容桁数を越えず、計算の継続が可能である。しかも、その結果を２乗する、つまり［８．８８］→［×］→［＝］→［＝］→［＝］→［＝］→［×］→［＝］と入力すると、８．８８の５乗の２乗、すなわち８．８８の１０乗の近似値として３０４８８０５０６８．６８と計算結果が表示される。しかも、計算結果の継続が可能である。【０００９】  ただし、この場合、｛＝｝キーを続けてあと１回でも押して累乗の計算を続けると、エラー表示が出て計算の継続ができなくなる。ただし、あと１回押したときの結果は８．８８の１１乗ではなく１５乗となる。なお、許容桁数が１２の電子計算機で入力できる整数部分が一桁の小数で最大のものである９．９９９９９９９９９９９の１０乗、すなわち９．９９９９９９９９９９９１０は１０１０より小さく、ゆえに１０１２より小さいから、整数部分が一桁の数を１０乗した結果の整数部分が１２桁を越えることはない。それゆえ、許容桁数が１２や１０の電子計算機では、整数部分が一桁の数を１０乗したときにエラー表示が出て計算の継続ができなくなることはない。【００１０】  許容桁数が１２の一般的な電子計算機を用いて、上述した方法で８．８８の１０乗を計算すると、３０４８８０５０６８．６８と計算結果を表示するが、その際の真の計算結果における整数部分の位の個数と小数部分の位の個数の合計が許容桁数を越えると、最高位から数えて許容桁数を越えない範囲に存在する位、つまり上位１２個の位に入る数字のみ表示して、他の各位に入る数字はすべて切り捨てる。つまり、結果的に切り下げた数値を表示することになる。ただし、切り上げや四捨五入などの切替スイッチを設けた電子計算機において、前記切替スイッチで切り替え、許容桁数を減少した条件下等で計算する場合は、この限りではない。なお、小数の累乗の場合、底の小数部分の桁数に指数を乗じた積より表示された計算結果の小数部分の桁数の方が小さければ、真の計算結果の整数部分の桁数と小数部分の桁数の合計が許容桁数を越えたため切り下げた数値が表示されたことになる。そして、以後、累乗の計算を続けると、計算途中で再び［×］の入力を行って途中結果の累乗を計算するときも含めて、常に、切り下げた数値が表示される。もし切り下げた結果となったか否かが不安であれば、１０の累乗を乗じたり、請求項３に記載の電子計算機に設けた小数点右移キーを用いたりして、小数点を右に移動して整数としたものを累乗するした際のエラー表示の有無により確かめることができる。【００１１】  例えば、８．８８の１０乗の例では５乗した段階で切り下げた値、つまりこの方法で計算したときの下限を表示することになり、以下、同様に下限を表示することになる。その計算結果３０４８８０５０６８．６８は、この方法で計算したときの８．８８の１０乗の下限となる。なお、１０乗する際、｛＝｝キーを９回連続して押して計算したときや、まず平方し、その結果を５乗して計算したときと較べて若干結果が異なることは有り得る。この例では、前者の結果も、後者の結果も上記の結果と若干異なる３０４８８０５０６８．６７となる。三つの計算結果がすべて同じであったり、逆にすべて異なることも有り得る。しかし、いずれの結果であっても、真の数値より必ず小さい値であって真の数値以上になることは決してない。そして、これが非常に重要である。なお、以後、１０乗する際には、まず５乗し、その結果を平方するとする。【００１２】  ところで、８８８の代わりに８．８８を用いて１０乗を計算したが、この計算は、ごく少数の限られた許容桁数の制約の下で行うためにとった方法であり、下記の数式１の仮数部を１０乗したに過ぎない。そこで、基数を１０とする累乗の部分も同じく１０乗する。ただし、その際、その指数である２に１０を掛けた結果である２０を指数とする。そして、これを前述した計算結果に掛けた形の数が、この計算方法により得られる２の１０乗の下限となる。このようにして、下記の数式２が得られる。数式１の指数部に入る２は、小数点を移動した際に飛び越えた位の個数と等しい。【００１３】
【数１】
2015197907.tif 000002
【００１４】
【数２】
2015197907.tif 000003
【００１５】  更に、数式２において正規化する、言い換えれば、整数部分が一桁となるように小数点を移動して３．０４８８０５０６８６８とする。その際、左に移動して飛び越えた位の個数である９を指数部に入っている数２０に足せばよく、下記の数式３となる。請求項１などに記載の電子計算機はこの正規化をするものである。小数点移動キーを押しさえすれば、指数の計算をするのみで、数式３が得られる。小数点移動キーを押す際に表示されている数の整数部分が一桁の場合には、小数点を移動する必要がなく、表示は不変のまま保持する。【００１６】
【数３】
2015197907.tif 000004
【００１７】  一般的な電子計算機は、整数を表示する際、書く際には普通は表記しない小数点を表示するものが多いようである。ただし、携帯電話やパンコンに内蔵された電子計算機には表記しないものが多いようである。請求項２に記載の電子計算機は、そのような表示をしない電子計算機において、整数部分が一桁となるよう最高位とその次に下位の位の間に小数点を表示する。【００１８】  請求項３に記載の電子計算機は、小数点の移動を左にも右にも一つづつ移動できることを特徴とする。整数若しくは整数部分が二桁以上の小数又は整数部分が一桁かつ整数部分の位の個数と小数部分の位の個数の合計が許容桁数より小さい小数を表示している際に押した場合にその数を１０で割った商を表示する小数点左移キーを設ける。つまり、小数点の移動を左に一つ移動する。ただし、整数部分が一桁の小数を表示している場合で整数部分の位の個数と小数部分の位の個数の合計が許容桁数と等しいとき、つまり数字を表示する数字表示部をすべて使用しそれらに加えて数字を新たに追加して表示できないとき、表示された位の数字のうち右端の位の数字を削除してなる数を１０で割って表示する、つまり前記小数の左側に０を添え、それと右隣りの位との間に小数点を移動することになる。その結果として、前記小数を１０で割って一桁切り捨てた数が表示される。ただし、整数部分が一桁の小数の場合でも、整数部分の位の個数と小数部分の位の個数の合計が許容桁数より小さいときには、前記小数を１０で割った商を表示することになる。又、小数点右移キーを設け、桁数が許容桁数より小さい整数又は小数を表示している際に押した場合にその数の１０倍の数を表示する小数点右移キーを設ける。つまり、小数点を右に一つ移動する。ただし、桁数が許容桁数と等しい整数の場合には、１０倍すると桁数が許容桁数を越えるから、小数点の移動は行われず表示は不変のまま保持する。【００１９】  請求項４に記載の電子計算機は、小数点移動キーを押して小数点を移動すると、移動して飛び越えた位の個数である越位数を表示することを特徴とする。ただし、小数点を左に移動した場合は正とし、右に移動した場合には負とする。正規化したときに指数の計算がし易い。【００２０】  請求項５に記載の電子計算機は、越位数の表示中に再び小数点移動キーを押す又は数秒間経過すると越位数を消去して小数点の移動後の数を表示する。つまり、元の計算結果に戻す。そして、以後、前記小数点移動キーを押すと小数点の移動後の数を消去して前記越位数を表示することと、前記小数点移動キーを押す又は数秒間経過すると前記越位数を消去して小数点の移動後の数を表示することを繰り返す。【００２１】  請求項７に記載の電子計算機は、指数の計算も行うことを特徴とする。上述の累乗の計算のような桁数の大きな計算をする際、電子計算機で行う計算は、実際には仮数部同士の計算であるから、請求項７に記載の電子計算機は大変利便である。請求項７に記載の電子計算機を用いて指数表記で入力する際、仮数部の入力後に指数キーを押した後に指数部に入る数を入力する。その際、１０を基数とする。【００２２】  指数部の計算は次のように行う。掛け算や累乗の場合は、各々の因数における各々の指数部に入っている各々の数を足す。割り算の場合には、割られる数における指数部に入っている数から割る数における指数部に入っている数を引く。足し算又は引き算の場合には、足される数と足す数又は引かれる数と引かれる数の各々の指数部に入っている数が等しいときはそれらの指数部に入っている数はそれぞれそのままで、仮数部同士の計算を行う。等しくないときには指数部の計算のみでなく仮数部の計算も行わず表示は不変のまま保持する。そして、逆数の計算の場合には指数部の指数の正負を反転する。つまり、プラスとマイナスを入れ替える。なお、逆数とは、分母と分子を入れ替えてなる数である。逆数の計算は、数値を入力した後又は計算結果が表示された後に、［÷］→［＝］と入力すればよい。例えば、［１］→［＋］→［１］→［＝］→［÷］→［＝］と入力すると、その計算結果である０．５が表示される。特に、分母の計算が複雑だったり、計算結果の桁数が大きかったりしたときに便利である。ただし、電子計算機のメーカーや機種により、この計算ができないものもある。【００２３】  指数部に入る数の入力を省くと、指数部に入る数を０として計算する。その際、仮数部と指数表記された数の全体は、結局、同じ数となる。足し算の場合で足される数と足す数の各々の指数部に入っている数が等しいときにおいて、仮数部同士の計算を行って整数の結果の桁数が許容桁数を越える又は小数の結果の整数部分の桁数が許容桁数を越える際には、エラー表示が出て計算の継続ができなくなる。
【発明の効果】
【００２４】  これまで述べてきた許容桁数を越える大きな数の計算結果は、上述したように真の数値ではなく下限であるが、近似値でよければ、後述の計算のような桁数がよほど大きくない限り、これだけでも十分有用である。しかし、それに加えて、上限も計算すれば、いっそう有用である。下限と上限の両方がわかれば、桁数がかなり大きい数の桁数やその数の上位の複数の位の数字を確定できたり、有効数字が多い近似値を算出できたりする。【００２５】  以下、上限を計算するメリットについて具体的に述べる。上限の具体的な計算方法については「発明を実施するための最良の形態」や「実施例」で述べる。【００２６】  本来は誤入力した数値を修正するために設けられた修正キーであり｛⇒｝などとキーに印字されているキーが、一般的な電子計算機でもよく設けられている。以後、修正キーを入力する際には［⇒］と表記するとする。このキーがなければ上限の計算ができないわけではないが、このキーがあれば格段に便利になるので、以下、上限を計算する際には修正キーを設けた電卓を使用することを前提とする。【００２７】  上記で８８８の１０乗の下限を計算したが、後述する上限の計算方法を用いて計算すると、後述する計算方法による８８８の１０乗の上限を示す下記の数式４を得られる。つまり、下限を示した数式３とあわせて下記の数式５が得られる。８８８１０の真の数値は、必ず数式５の範囲内に存在する。【００２８】
【数４】
2015197907.tif 000005
【００２９】
【数５】
2015197907.tif 000006
【００３０】  更に続けて、８８８の１０乗の１０乗の上限、すなわち８８８の１００乗の上限を計算し、その一方で８８８の１００乗の下限も数式３を計算したときと同様にして計算すると、下記の数式６が得られる。勿論、８８８１００の真の数値は、必ず数式６の範囲内に存在する。【００３１】
【数６】
2015197907.tif 000007
【００３２】  これを何度も繰り返すと、一般的な簡易電子計算機で計算して下記の数式７を得られる。【００３３】
【数７】
2015197907.tif 000008
【００３４】  そして、この結果として、８８８の１億乗という非常に大きな数が２億９４８４万１２９７桁であることがわかるのみでなく、上位４つの位の数字の確定ができる。下記の数式８の右辺の仮数部の上位四つの位に入る数字の３、７、８、そして３である。なお、仮数部の位の個数は、指数部より１大きい２億９４８４万１２９７である。【００３５】
【数８】
2015197907.tif 000009
【００３６】  更に続けると、下記の数式９が得られる。そして、８８８の１０００億乗が２９４８億４１２９万６５７８桁であることがわかる。ただし、上位の位に入る数字は、最高位の数字のみが５と確定できる。【００３７】
【数９】
2015197907.tif 000010
【００３８】  更に、下限と上限をそれぞれ１０乗すると、下記の数式１０が得られる。そして、８８８の１兆乗が２兆９４８４億１２９６万５７７９桁であることがわかるものの、最高位の数字については２から７までのいずれかであるという限定しかできない。【００３９】
【数１０】
2015197907.tif 000011
【００４０】  更に、下限と上限をそれぞれ１０乗すると、下限における小数点を移動する前の仮数部は５５１７７．４７９７２６７、上限の同じく小数点を移動する前の仮数部は３６４６３３０８６．６３７となり、小数点の位置が異なる。この時点で、８８８の１０兆乗の桁数においての一の位に入る数字は４から８までのいずれかと限定できても確定はできない。つまり、８８８の１０兆乗の桁数は２９兆４８４１億２９６５万７７８４から２９兆４８４１億２９６５万７７８８までのいずれかである。下記の数式１１はそれぞれ小数点の移動前においての数式である。なお、数式１０の結果の下限と上限をそれぞれ平方した時点、つまり８８８の２０兆乗の時点で確定できなくなる。【００４１】
【数１１】
2015197907.tif 000012
【００４２】  もし下記の数式１２のような結果になれば、上位の位に入る数字で確定できるのは五つである。ただし、近似値であれば、小数点以下第十位までしか計算結果が得られなかったとして下記の数式１３あるいは数式１４と得られる。いずれも誤差は１０−８％未満である。この例のように、下限と上限の差が１０−８％未満であっても、上位五桁までしか確定できないケースも有り得るが、この例のようなケースに限られる。つまり、下限と上限の差が１０−８％未満であれば、少なくとも、入る数字が確定できない位のうちで最も上位の位の次に上位の位からから下位に向かって、小数点以下第九位までの位に下限では９が上限では０がそれぞれ連続して入るケースに限られる。確定する数字の個数については、整数部分が０の場合は、上位から下位に向かってみて０でない初めての数字が現れる位から数えるとする。【００４３】
【数１２】
2015197907.tif 000013
【００４４】
【数１３】
2015197907.tif 000014
【００４５】
【数１４】
2015197907.tif 000015
【００４６】  一般的な簡易電子計算機で対数の精密な計算を容易にできる。以下、８８８を真数とする対数を例にとって説明する。流れ作業的な手順で対数の精密な計算を行う具体的方法については、「実施例」で述べる。【００４７】  まず、１０を底とするときの８８８の対数、つまりｌｏｇ１０８８８を計算する方法を述べる。【００４８】  ８８８は、上記で累乗を計算したときの底であり、上記の計算結果を利用する。以下に説明する対数の計算において、真数とする数の累乗を上述のように計算する。そして、例えば８８８を１億乗した時点での結果として数式７が得られたが、数式７のように正規化したときの下限の指数部に入る数と上限の指数部に入る数が等しいとき、それらの共通する指数を、８８８の累乗の指数である１億で割った商が、求める対数の上位の位の数字と必ず一致する。つまり、下記の数式１５のように得られる。確定する位の数字の個数は、下限の指数部と上限の指数部に共通して入る数と等しい。この例では上位九つの位の数字が確定する。【００４９】
【数１５】
2015197907.tif 000016
【００５０】  更に、８８８の累乗を上記で数式１０と計算したように１兆乗までは正規化したときの下限の指数部に入る数と上限の指数部に入る数が等しいため、そのときのそれらの共通する数である２兆９４８４億１２９６万５７７８を１兆で割って得たとき、確定する位の個数が最も多い。この例では下記の数式１６となり、上位１３個の位の数字が確定する。不等式で書くと、下記の数式１７となる。なお、１０兆乗の桁数においての下限の指数部に入る数の一の位に入る数字は４で、上限のそれは８だから、確定できない位で最も上位の位の数字は４から８までのいずれかであると限定できる。ただし、上限における切り上げる前の表示された数値が許容桁数と同じ桁数かつ表示された各位の数字がすべて９、つまり９９９…９．９…９であり、切り上げたことにより切り上げた後の指数部に入る数が下限におけるそれより１大きくなるときには、切り上げる前の指数部に入る数で考える。【００５１】
【数１６】
2015197907.tif 000017
【００５２】
【数１７】
2015197907.tif 000018
【００５３】  次に、１０以外の数を底とするときの対数の計算について述べる。【００５４】  底を変換する有名な公式である下記の数式１８を利用する。例えば、ｌｏｇ２  ３の場合、数式１８を利用すると下記の数式１９のように１０を底とする対数のみで表わされる。あとは、ｌｏｇ１０  ３とｌｏｇ１０  ２をそれぞれ上述した方法で計算して前者の計算結果を後者の計算結果で割ればよい。なお、ｌｏｇ２  ３の下限と上限を計算する際、確実に下限は真の数値より小さく、上限は真の数値より大きくするために、下限においては割られる数であるｌｏｇ１０  ３の下限を、割られる数であるｌｏｇ１０  ２の上限で割って切り下げ、逆に、上限においてはｌｏｇ１０  ３の上限を、ｌｏｇ１０  ２の下限で割って切り上げた。ｌｏｇ１０  ３とｌｏｇ１０  ２においての最高位から下位に向かってみて初めて０でない数字が現れる位、つまり小数点以下第一位から数えて十番目の位まで上述の計算方法で得られる結果はそれぞれ０．４７７１２１２５４７…と０．３０１０２９９９５６…であるから、それらを用いるとｌｏｇ２  ３は、下記の数式２０となる。又、不等式で書くと、下記の数式２１となる。このようして、実際には１０を底とする対数の計算を行うものの、１０以外の数を底とする対数の計算も可能である。【００５５】
【数１８】
2015197907.tif 000019
【００５６】
【数１９】
2015197907.tif 000020
【００５７】
【数２０】
2015197907.tif 000021
【００５８】
【数２１】
2015197907.tif 000022
【００５９】  次に、桁数が許容桁数を越える数を真数とする場合の対数の計算方法について述べる。【００６０】  例えば、１２３４５６７８９０１２３４５を真数とする場合、許容桁数が１２の電子計算機に入力するために上位１２桁以外の位の数字は０となるように最高位から数えて１３番目の位を四捨五入し、その結果の上位１２桁でなる１２桁の整数を仮数部とし、１０を基数として指数表記したときの数で考える。つまり、この場合、１２３４５６７８９０１２×１０３を考える。そして、対数の有名な公式である下記の数式２２を利用すると、許容桁数を満たす仮数部を真数とし、１０を底とした対数、つまりｌｏｇ１０  １２３４５６７８９０１２の計算で済む。そして、上述した方法でｌｏｇ１０  １２３４５６７８９０１２を計算すると、最高位から数えて十番目の位までに入る数字が確定し、その結果は１１．０９１５１４９７であるから、ｌｏｇ１０  １２３４５６７８９０１２０００を下記の数式２３のように計算できる。もし四捨五入した数における最高位から数えて十二番目の位の数字が０であれば、その位から上位に向かってみて０でない数字が初めて現れる位までの上位１１桁以内の整数を真数として考えてもよい。【００６１】
【数２２】
2015197907.tif 000023
【００６２】
【数２３】
2015197907.tif 000024
【００６３】  小数を真数とする場合も同様にして計算できる。二桁以上で最高位以外の位に０以外の数字が入る位が少なくとも一つある整数を真数とした場合においての累乗の前の小数点の移動後の数は小数であるから、同様にして計算できる。ただし、整数部分が０のときには、小数点右移キーを押して、整数部分が０でない一桁の数とする。以後、同様にして計算すればよいが、数式７や数式１０などの下限あるいは上限にあたる各々の下限あるいは上限の各々の指数部に入る数は負となり、それゆえ対数も負となることに注意する。数式２２を用いて説明すると、同式中のｎの値にあたる値が−１以下の負の整数で、ｌｏｇａｔにあたる値は０以上１未満だからである。小数点右移キーを押して、整数部分が０でない一桁の数とする際、小数点は右に移動するから、その際に飛び越えた位の個数を絶対値とする負の数が上述したｎの値と等しい。【００６４】  自然科学などで、自然対数がよく用いられる。その際に、数式１８の公式を利用して数式１９のように底の変換を行うと、自然対数の底であるｅを底でなく真数とする対数、すなわちｌｏｇ１０  ｅの計算を要することになる。ｌｏｇ１０  ｅの数値は、０．４３４２９４４８１９０３…であるが、もしｅの値２．７１８２８１８２８４５…の上位１２個の位に入る数字を知っていれば、上述の方法で上位１１個の位に入る数字を確定できる。なお、ｅの値の最高位から数えて十三番目の位に入る数字は９であり、もしその位を四捨五入して２．７１８２８１８２８４６を用いても、結果は変わらない。もしｅの値で入る数字を知っている位が上位１１個以下であれば、例えば上位八つであれば、上位七つの位の数字しか一致しない０．４３４２９４４７（７３５）…が得られる。しかし、それは、真数として用いた２．７１８２８１８の対数であるｌｏｇ１０  ２．７１８２８１８の数値しては、上位１１個の位に入る数字が一致するものである。そこで、最高位から数えて九番目の数字が４以下の２であることをたとえ知っていたとしても、切り上げたときの上位八つの位を用いて対数の計算を行う、すなわちｌｏｇ１０  ２．７１８２８１９の計算を行うと、０．４３４２９４４９（３３３）…と結果が得られ、ｌｏｇ１０  ２．７１８２８１８の結果とあわせて、下記の数式２４が得られる。そして、下記の数式２５のように、ｌｏｇ１０  ｅの上位七つの位の数字が０．４３４２９４４であると確定できる。数式２４の上限において、小数点以下第七位に入る数字は５であるが、一つ下位の位の小数点以下第八位から繰り上がった結果であるから、小数点以下第七位に入る数字は４であると確定される。【００６５】
【数２４】
2015197907.tif 000025
【００６６】
【数２５】
2015197907.tif 000026
【００６７】  整数部分が０でない一桁の数において、許容桁数が１２桁の電子計算機の許容桁数を満たす最大の数は、位の個数が許容桁数１２と等しく、かつ各位の数字がすべて９である９．９９９９９９９９９９９である。その平方の上限も、切り上げたことにより、小数点の位置が異なるものの、位の個数が許容桁数と等しく、かつ各位の数字がすべて９の数となり、以後、何乗しても、上限は、小数点の位置以外は変わらない。つまり、正規化したときの仮数部は不変である。しかし、下限においては、正規化したときの仮数部は減少する一方であり、９．９９９９９９９９９９９を１兆乗した時点では下限と上限のそれぞれの正規化した仮数部の整数部分の桁数は等しい。それらを平方した時点、つまり２兆乗した時点でも等しいが、立方した時点、つまり３兆乗した時点で異なる。そして、１０兆乗した時点で異なるから、１０を底とし、位の個数が許容桁数と等しく、かつ各位の数字がすべて９の数の対数は、小数点以下第一位から同十二位までの位のすべてに９が入ると確定できる。【００６８】  逆に、整数部分が０でない一桁の数においての最小の数は１である。１を含む１０の累乗の小数点を移動するとき、そしてそのときのみ、移動後の数が１となる。その累乗は常に１であり、その桁数は許容桁数を満たし切り上げは不要のため、その累乗の下限と上限はいずれも常に１であり、いずれの越位数も常に０である。よって、１０を底とする１０の累乗の対数は、小数点を移動した際の越位数を整数部分とし、小数点以下の位には０が無限に連続して入る数となり、つまりそれは越位数と等しい。このケースの累乗する前に小数点を移動する際の越位数は、１０の累乗の指数とも等しく、１０を底とする１０の累乗の対数と等しいのは当然の結果である。
【発明を実施するための最良の形態】
【００６９】  「発明の効果」で上限を計算するメリットについて述べた。ここでは、その具体的な計算方法について述べる。【００７０】  ８８８の１０乗の計算をする際に、８８８の代わりに８．８８を用いて計算したが、一般的な電子計算機では一度に１０乗するのではなく、実際には、上述したように一つずつの掛け算を順次行う。５乗の次は１０乗の計算を行うが、５乗した結果を平方するのであって、その際の計算は一つの掛け算である。この点を留意する。ところで、この例では５乗した段階の計算結果で許容桁数を越える。そして、５乗の計算結果として表示される５５２１５．９８５６２６３は、切り捨てた数値であり、この計算により得られる５乗の下限である。なお、底とする数の小数部分の桁数２に指数５を乗じた積１０より表示された計算結果の小数部分の桁数７の方が３小さいから、真の累乗の桁数は許容桁数より３大きく、その結果として、３桁切り捨てた数値が表示される。【００７１】  そこで、修正キーを用いて上限を得る。電子計算機のメーカーや機種にもよるが、本来は誤入力した数値の修正を行う修正キーを用いて、計算結果として表示された数値の変更を行うことができるものもある。ここでは、それが可能な電子計算機を用いることを前提とする。【００７２】  上記の切り捨てた数値５５２１５．９８５６２６３が計算結果として表示された際に、修正キーを一回押すと、表示された数字のうち右端の位の数字３が一つ消去される。その後、消去した数字に１を加えた和である４を入力すると、上述の計算に要する上限を得られる。つまり、切り上げた値である５５２１５．９８５６２６４が表示される。具体的には、上記の例で５乗の上限を得るまでの入力は、［８．８８］→［×］→［＝］→［＝］→［＝］→［＝］→［⇒］→［４］と入力すればよい。なお、４乗を計算した段階までの計算結果については、整数部分と小数部分の位の合計が許容桁数を越えないので、切り上げる必要はない。もし４乗までの計算結果を切り上げても、切り上げ後の数字が真の数値より大きいという条件は、勿論、満たすが、後に指数が大きくなったときに下限との差が早く大きくなるだけである。【００７３】  もし表示された計算結果の位の個数が許容桁数と等しい１２であり、かつ表示された各位の数字のうちで右端の位の数字が９であれば、修正キーを２回押して右端から数えて二つ目の位の数字に１を加えた和を入力し、続けて０を入力する。もし右端の位から複数の９が連続して入っていれば、それらをすべて消去し、更に９でない次の数字を一つ消去してから、その数字に１を加えた和を入力し、続いて消去した９と同じ個数の０を入力する。例えば、計算結果が１２３．４５６７８９１９９であれば、［⇒］→［⇒］→［⇒］→［２］→［０］→［０］と入力する。その結果、１２３．４５６７８９２００と表示される。ただし、０の入力の有無は計算結果に影響を与えないから、０の入力は省いてよい。そのときには、１２３．４５６７８９２と表示される。なお、計算結果が表示された直後に修正キーを押さずに｛３｝と押しても、通常は、単に３が表示されるだけである。【００７４】  表示された計算結果の位の個数が許容桁数と等しい１２であり、かつそれらの位の数���がすべて９であれば、最高位の数字が１で、０以外の数字が入る位はない整数、つまり１０００…０あるいは１となる。ただし、表示された計算結果において、整数部分の桁数が許容桁数と等しい１２であり、かつそれらの位の数字がすべて９の場合に、つまり計算結果が９９９９９９９９９９９９の場合に、これに上述した切り上げを行えば整数部分の桁数が許容桁数を越えるから、請求項６に記載の電子計算機に設けた加算後移動キーを押すと、その場合には表示は不変のまま保持する。【００７５】  又、整数部分の位の個数と小数部分の位の個数の合計が許容桁数を越える小数を電子計算機で表示する場合であっても、もし許容桁数を満たす位のうち最も下位の位、すなわち許容桁数が１２の電子計算機においては最高位から数えて１２番目の位の数字が０であれば、通常、その数字を表記せず、表示する位は１１個以下である。もしその次に下位の位、つまり１１番目の位の数字が０であれば、その位の数字も表示しない。このように、小数を表示する際には右端にある位の数字は必ず０でない数字となる。そこで、整数部分の位の個数と小数部分の位の個数の合計が許容桁数を越える小数であり、かつ表示された数値における整数部分の位の個数と小数部分の位の個数の合計が許容桁数より小さい場合は、右端の位の数字を一つ消去し、消去した数字を再び入力してから０に１を加えた数字、すなわち１を入力する。もし最高位から数えて１２番目の位から連続して複数の位に０が入っていれば、言い換えれば、表示された数値における整数部分の位の個数と小数部分の位の個数の合計が許容桁数より小されば、それより一個少なく０を入力して１を一個入力するする。例えば、計算結果の整数部分の位の個数と小数部分の位の個数の合計が許容桁数を越える小数の場合で表示された結果が１２３．４４４５６７のとき、［⇒］→［７］→［０］→［０］→［１］と入力する。その結果、１２３．４４４５６７００１と表示される。【００７６】  上記の例において、もし切り上げ前の数値においての表示されている位のうちで最も下位の位を切り上げると、すなわち７から８に切り上げると、切り上げ後の数値が真の数値より大きいという条件は満たすが、それにより得られる数値と真の数値や下限との差は大きくなり、後に桁数が大きくなったときに下限との差が早く大きくなるだけである。なお、許容桁数ぎりぎりの桁数で表示すると、通常、画面の左端まで表示するので、この入力の必要の有無は見ればすぐにわかる。しかも、一桁あるいは二桁少ないときには、左端と最高位との間隔でわかったり、電子計算機を見る角度により数字表示部の表示していない位の液晶部が見えてわかったりするので、何桁表示していないかはたいていは見ればすぐにわかる。【００７７】  上述した方法を繰り返すと、８８８の１０乗の上限の計算において、一般的な電子計算機で計算して数式４の結果を得ることが可能である。請求項６に記載の電子計算機は、この切り上げを行うすることを特徴とする電子計算機である。これにより、桁数が非常に大きい数の上位の位の数字を確定したり近似値を計算したりするだけでなく、請求項８に記載した電子計算機のように、一般的な電子計算機で、対数の精密な計算が容易にでき���。なお、小数点の移動ができない従来の一般的な電子計算機でも後述する方法で計算はできるが、請求項１に記載の電子計算機などのように小数点の移動ができれば、桁数が非常に大きい数の上位の位の数字を確定したり、上限の計算が非常に便利である。従来の一般的な電子計算機では、小数点を移動する際、１０の累乗で割ると計算できるが、手間や時間がかかる。【００７８】  上述した８８８の５乗の計算のときと同様にして１０乗の計算を行うと、その上限として、数式４の結果が得られる。その具体的方法は、［８．８８］→［×］→［＝］→［＝］→［＝］→［＝］→［⇒］→［４］→［×］→［＝］→［⇒］→［⇒］→［７］→［０］（→［＜小数点移動キー＞］）である。１０乗における下限と上限の計算結果は、小数点移動前の時点でそれぞれ３０４８８０５０６８．６８と３０４８８０５０６８．７０となるが、この例のように小数点の位置が同じであれば、上限と下限の桁数は等しく、ゆえに正規化した指数部に入る数も等しい。なお、小数の累乗において、一旦、整数部分の位の個数と小数部分の位の個数の合計が許容桁数を越えれば、それ以上指数の大きい累乗において、常に許容桁数を越えるから、それ以後の上限の計算において、常に切り上げる必要がある。上限においての切り上げる前に正規化したときの仮数部における表示された位の個数が許容桁数と等しく、かつ表示された各位に入る数字がすべて９のときには、つまり表示された数値が９．９９９９９９９９９９９で、切り上げて１０．０００…０となる際に桁数が増加するときには、数式４のような不等式においての不等号の下に等号がある「≦」でなく等号がない「＜」であることに着目すると、その場合には上限の桁数は切り上げる前の桁数で考えることに注意する。このときに請求項６に記載の電子計算機に設けた加算後移動キーを押すと、切り上げをし、その後に小数点を移動した数として１．０００…０と表示されるが、上限の桁数に注意する。又、その際、越位数から１を引いた差で考えることに注意する。【００７９】  更に、数式４における上限の仮数部である３．０４８８０５０６８７０を１０乗すると、この計算方法により得る８８８の１０乗の１０乗の上限、すなわち１００乗の上限が得られる。なお、８．８８の平方の際に切り上げる必要はなかったが、３．０４８８０５０６８７０の平方の際には、必要であることに注意する。このようにして、数式６を得ることができる。数式６により、８８８の１００乗が２９５桁であることと、上位の１１個の位の数字が確定できる。数式５の上限における最高位から数えて１１番目の数字７は、切り上げた結果として６から７になったものの、不等号の下に等号がない「＜」であることに着目して、６と確定できる。なお、その際、切り上げた結果として０が入る同じく１２番目の位の数字は確定できないものの、８と９のいずれかという限定はできる。【００８０】  次に、対数の計算結果について述べる。【００８１】  入る数字が確定する位の個数によっては下限のみで十分である。そして、そのとき、手間や時間を大幅に軽減でき、ミスも防止できる。一般的な電子計算機でも極めて容易に計算できる。その条件などについて述べる。【００８２】  許容桁数��１２の電子計算機において、１０００以下の整数を真数とすれば、下限の計算のみで、少なくとも上位八つの位の数字を必ず確定できる。それは、許容桁数が１２の電子計算機において、１０００以下の整数を真数とすれば、数式１２の例のようになることがないからであり、又、後述するように、この方法で得られる結果の誤差が極めて小さいこともその理由に挙げられる。しかも、たとえ１００１以上の整数を真数としたときであっても、控えめにみても、Ｉ．９９％以上で１０桁以上確定、ＩＩ．９９．９９９％以上で７桁確定、ＩＩＩ．９９．９９９９９％以上で５桁確定できる。たとえ数式１２の例のようになって数式１３あるいは数式１４のように上位１２桁をとっても、誤差は、真数とする数の桁数によらず最大でも１０−９％未満である。下記の数式２６のケースは、５０８６２７６９０３０６を真数として上述の方法で１兆乗まで計算したときに得られる結果であり、このケースでは、上位五つの位の数字のみが確定できる。しかし、たとえ上位数個の位の数字しか確定できないケースであっても、数式１２の例を用いて上述したように、入る数字が確定できない位のうちで最も上位の位の次に上位の位から少なくとも小数点以下第十一位まで、下限では９が、上限では０がそれぞれ連続して入るケースに限られる。数式２６の例では、小数点以下第五位から同第十一位までそれぞれ７個も連続して入る。【００８３】
【数２６】
2015197907.tif 000027
【００８４】  このケースの上限では、その関係が途切れた直後の位である小数点以下第十二位の数字がたまたま０ということもあって、０が入る位が八つも連続して並ぶ。真の数値も同様の理由で９が入る位が八つも連続して並ぶ。真の数値である１１．７０６３９９９９９９９９６…との差が大きい方である上限においてでさえ、誤差率は９．３９６５６９３９７９３×１０−１２％未満である。なお、数式２６は、下限の位の数字が９で上限のそれと対応する位の数字が０である関係にある最後の位より二つ下位の位まで計算したときのものである。もし、数式２６の上限でなく、それより一つ上位の位まで計算して切り上げたときの１１．７０６４０００００００１と、真の数値の同じく小数点以下第十二位までとったときの１１．７０６３９９９９９９９９で計算すれば、誤差率は１．７０８４６７１６３２６×１０−１１％未満である。【００８５】  １０００以下の整数を真数とすれば、下限の計算のみで、少なくとも上位八つの位の数字を必ず確定できると述べたが、上位四つの位に入る数字のみの確定でよいのであれば、１億以下の整数のいずれを真数としても必ず確定できる。
【実施例】
【００８６】  対数の計算を一般的な電子計算機で行う際の具体的手順について述べる。ほとんどすべての数について用いることができ、特に１０００以下の整数を真数とし、上位八個以下の位に入る数字のみの確定でよければ、それらのすべてのケースについて用いることができる流れ作業的な手順である。又、上位四つの位に入る数字のみの確定でよいのであれば、１億以下の整数のいずれを真数としても用いることができる。【００８７】  ８８８の小数点を移動して整数部分が一桁の小数である８．８８とする。その際に小数点を左に移動する際の越位数２をメモする。そして、そのメモの右隣りに小数点を記入する。なお、一桁の整数又は整数部分が一桁の小数を真数とするときには、０と小数を記入する。【００８８】  次に、８．８８の１０乗の下限を上述した方法で計算する。すると、数式２の仮数部の３０４８８０５０６８．６８が計算結果として表示される。そして、この数の小数点を移動したときの越位数である９を、先ほどメモした「２．」の右隣りに記入する。つまり、この時点で「２．９」と記入されたことになる。請求項４に記載の電子計算機であれば、表示された越位数を記入すればよい。計算結果の整数部分が一桁であって小数点の移動がないときには、そのときの越位数である０を記入する。【００８９】  次に、３．０４８８０５０６８６８の１０乗の下限を計算し、その計算結果における越位数４を、メモに記入された「２．９」の右隣りに記入する。すると、「２．９４」となる。【００９０】  以下、これを繰り返す。そして、例えば１０億乗した時点では、メモには「２．９４８４１２９６５」と記入されることになる。更に、メモの右側に「…」を記入し、メモの左側に少し空白をあけて「ｌｏｇ１０」と記入し、そして前記空白に「＝」を記入すると、求める対数における九つの位の数字が確定した対数が流れ作業的に得られる。このようにして、数式１６や数式１５の結果が得られる。【００９１】  ただし、真数とする数が整数であって、１０００以下の整数を真数としても、上位九個以上の位に入る数字を確定したり、１００１以上の整数を真数としたりする場合には、下限のみの計算で済むという確認には至っておらず上限を計算して確認する必要がある。上限を計算して下限と一致した位については、確定としてよい。しかし、真数とする数においての累乗する前の小数点の移動後の数を底とし、その際の越位数が０以外の場合は、前記越位数の桁数を、入る数字を確定する位の個数から引いた差を、０の場合には前記越位数を指数とする１０の累乗を指数とする累乗を計算すれば、ほとんどのケースでほぼ確認できる。例えば、上位四つの位に入る数字を確定する場合であって、累乗する前に小数点を移動した際の越位数が１であれば、真数とする数においての累乗する前の小数点の移動後の数の１０３乗、つまり１０００乗を計算して、その仮数部、つまり表示された数が９９…９．９…９■□□…□や１００…０．０…０■□□…□のような数にならない限り、上限の計算は省いてよい。■は、それぞれ９と０のいずれでもない数字であってそれぞれ一つずつであり、□は、それぞれ９と０を含むいずれの数字でもかまわない。上限の計算を省くか否かの判断に要するために必要なそれらの個数は、入る数字を確定する位の個数による。以下の実施例では、上限の計算を要することもある。【００９２】  小数を真数とする場合も、ほとんどのケースで同様にして計算できる。ただし、整数部分が０のときには、整数部分が０でない一桁の数とする際に小数点を右に移動して飛び越えた位の個数においての符号を負としたものをメモする。つまり、負の符号である「−」を記入し、その右隣りに飛び越えた位の個数を記入する。例えば、小数点を右に移動して二つの位を飛び越えれば、「−２」と記入する。そして、その右隣りに「＋」と記入する。この時点で「−２＋」と記入されたことになる。以下、１０を底とする小数点の移動後の数の対数について上述と同様に行い、その後に一つの負の数と一つの正の数でなる足し算を行うのみでよい。【００９３】  許容桁数を越える数を真数とする場合にも、ほとんどのケースで同様にして計算できる。まず、真数とする数の桁数から許容桁数を引いた差をメモし、その符号は正とする。そして、その右隣りに「＋」と記入する。つまり、数式２３で計算した例では「３＋」と記入されたことになる。そして、数式２３の例で計算したときと同様に、許容桁数を超える位で最も上位の位で四捨五入するなどした結果においての許容桁数を満たす上位の位でなる数を用いて、同様に行う。この計算は、結果的に、数式２３の第四辺の二項を入れ替えたものと同じである。【００９４】  自明の場合であるが、１０の累乗を真数とする場合は、０の個数をメモするのみでよい。例えば、１０００を真数とするとき、「ｌｏｇ１０＝３」でよい。
【産業上の利用可能性】
【００９５】  ところで、数学の書物には対数を用いて、例えば１２の３２乗の桁数と最高位の数字を求める問題がよく載っている。しかし、本発明を利用して上述の方法を用いれば、容易に計算できるどころか、最高位だけでなく上位の複数の位に入る数字を容易に確定できる。しかも、例えば１２３の３２０乗など遥かに桁数が大きいものでも容易に計算できる。３２０の素因数分解により、３２０は２６  と５１の積であることに着目すると、３２０乗を行う手順の一例として、１．２３の平方を計算し、更にその結果の平方を計算し、更にその結果の平方を計算し、それを全部で六回繰り返し、その計算結果を５乗すればよい。ただし、最後の５乗の計算の前に小数点を移動して正規化しないと、その途中で整数部分の位の個数が許容桁数を越えるので、最後の５乗の計算の前あるいはそれより前に正規化かする必要がある。又、上限の計算の際、三回目の平方の計算結果から切り上げる必要がある。具体的な入力は、下限では［１．２３］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［＜小数点移動キー＞］→［×］→［＝］→［＝］→［＝］→［＝］、上限では［１．２３］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［⇒］→［３］→［×］→［＝］→［⇒］→［２］→［×］→［＝］→［⇒］→［９］→［×］→［＝］→［⇒］→［２］→［１］→［＜小数点移動キー＞］→［×］→［＝］→［⇒］→［３］→［＝］→［⇒］→［８］→［＝］→［→］→［９］→［＝］→［⇒］→［⇒］→［９］→［０］とそれぞれ入力して下記の数式２７を得ることができる。さらに、それぞれ正規化すると、下記の数式２８となる。ただし、請求項７に記載の電子計算機を除いて、指数の計算に注意しなければならない。なお、５乗を行う順番はこの順番でなくてもよいが、異なる順番で行うと、下限や上限の仮数部が若干異なることは有り得るが、１２３３２０の桁数や、入る数字が確定する位の個数が異なる結果にはならない。この程度の桁数で結果が異なることはまずない。たとえもしあったとしても、数式１２のようなケースに限られる。このようにして、１２３３２０が６６９桁という結果が得られ、しかも、上位の位の、それも最高位どころか上位の九つの位の数字が下記の数式２９のように容易に得られる。【００９６】
【数２７】
2015197907.tif 000028
【００９７】
【数２８】
2015197907.tif 000029
【００９８】
【数２９】
2015197907.tif 000030
【００９９】  電子計算機の計算において、通常、１０進法を用いて数値を入力したり、計算結果を１０進法で表示したりするが、計算過程では２進法や８進法などの２ｎ進法を用いることがほとんどである。ｎは自然数である。そこで、底とする数は１０でなく、２の累乗である２ｎとする対数で計算する電子計算機も有用であろう。その際にも、勿論、上述した底の変換などの計算方法を用いることは可能である。
【手続補正書】
【提出日】平成26年12月29日(2014.12.29)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、累乗などの桁数の大きな数においての桁数や上位の複数の位に入る数字の確定や、対数の計算をし易い電子計算機に関するものである。
【背景技術】
【０００２】  従来は、学者や技術者等が用いる特殊な電子計算機、いわゆる関数電卓でない限り、一般的な簡易電子計算機、いわゆる電卓等では、累乗などの桁数の大きい数の計算は困難であり、まして対数の精密な計算はできなかった。
【発明の概要】
【発明が解決しようとする課題】
【０００３】  自然科学で指数表記と呼ばれる方法を用いて、桁数が大きい数や、逆に１よりずっと小さい数を表記することがよくある。その際、１０を基数とすることが多い。そして、１０を基数とし、指数部を増減するとともに仮数部に入る数の整数部分を０以外の一桁の数とする、つまり正規化することがよくある。一般的な電子計算機で１０を基数として正規化するためには、１０の累乗数で割って小数点を所定の位置に移動するなどをすれば計算できなくはないが、本発明は、特殊な電子計算機である関数電卓等でなく一般的な電子計算機、いわゆる電卓等に必要最小限の機能を加えただけで正規化などの負担を大幅に軽減し、入力ミスを防止するためになされたものである。そして、累乗などの桁数の大きい数の桁数や上位の複数の位に入る数字の確定が容易に行えるようになる。その上、一般的な電子計算機にもかかわらず対数の精密な計算が容易にできるようになる。
【課題を解決するための手段】
【０００４】  請求項１に記載の電子計算機は、正規化をする際に便利な電子計算機である。請求項１に記載の電子計算機は、小数点を移動する小数点移動キーを設けたもので、二桁以上の整数又は整数部分が二桁以上の小数を表示した際に前記小数点移動キーを押した場合、最高位とそれより一つ下位の位との間に小数点を移動する。一桁の整数又は整数部分が一桁の小数を表示した際に前記小数点移動キーを押した場合には、小数点の表示は不変のまま保持する。小数点の移動後に計算する際に移動後の数を用いて計算することを特徴とする。【０００５】  ところで、一般的な電子計算機には、通常、演算キーとして四則計算用の｛×｝キー、｛÷｝キー、｛＋｝キー、｛−｝キー、そして等号キーである｛＝｝キーのみか、これらに加えて平方根を計算する｛√｝キーが設けられているのみであることがほとんどである。本発明は、これらの演算キー以外の演算キーを要せず、｛√｝キーも要しない。｛Ｍ＋｝キーや｛Ｍ−｝キーなどのメモリー計算を行うキーも要しない。ただし、小数点を入力する小数点入力キーは要する。一般的な電子計算機の許容桁数のほとんどは８、１０、そして１２のいずれかである。以下、基本的に、許容桁数が１２で四則計算用のキーと等号キー、そして小数点入力キー以外のキーを設けていない一般的な電子計算機に必要最小限の機能を加えることを前提とする。ただし、小数点移動キーを設けていない従来の一般的な電子計算機でも、１０の累乗数で割って小数点の位置を変えれば、手間や時間がかかるものの、桁数の大きい数においての桁数や上位の複数の位に入る数字の確定をしたり、対数の計算をしたりすることができる。その際に、発明者が主に使用している従来の一般的な電子計算機は、２００４年のＣａｎｏｎ製で機種はＬＳ−１２１ＴＵである。その許容桁数は１２である。【０００６】  実は、電子計算機のメーカーや機種によるが、四則計算用の｛×｝キー、｛÷｝キー、｛＋｝キー、｛−｝キー、そして｛＝｝キーのみの演算キーしか設けていない一般的な簡易電子計算機であっても、それらのキーのみを使って一般の人にほとんど知られていない計算が幾つかできる。まず、それらの計算について述べる。なお、電子計算機に入力する具体的手順を表記する際、例えば２に３を掛ける際、［２］→［×］→［３］→［＝］と表記するとする。数字や小数点については、続けて入力する際には、特に分ける理由がない限り、［９．８７６５４］のように一つにまとめて表記するとする。【０００７】  例えば、２の累乗を計算する際、通常、次のようして入力する。［２］→［×］→［２］→［×］→［２］→［×］→……→［２］→［×］→［２］→［＝］。勿論、このように入力してもよいが、［２］の入力のうちで最初のもの以外の入力を省くのに加え、［×］の入力のうちで最初のもの以外の入力をする代わりに｛＝｝キーを押す、つまり［２］→［×］→［＝］→［＝］→［＝］→……→［＝］と入力しても計算できる。ただし、［＝］の入力のうちで最初の入力の際の計算で平方の計算をし、それ以後１乗ずつ増えるから、［＝］の入力回数は指数とする数より１小さい。例えば５乗の計算のとき、［＝］の入力は４回行う。このように入力すると、特に桁が多いときに、入力する時間や手間を大幅に省くことができるばかりか、入力ミスの防止にもなる。累乗又は他の計算を行ったときの計算結果が表示されたときにおいて、［×］の入力を一回行った後で［＝］の入力を一回又は複数回行うと、前記計算結果の累乗が計算される。例えば、［２］→［×］→［＝］→［＝］→［＝］→［×］→［＝］→［＝］と入力すると、２の４乗の立方、すなわち２の１２乗の４０９６が計算結果として表示される。なお、カシオ製などの電子計算機のメーカーや機種により、｛×｝キーを二回連続して押すと、同様に計算するものもある。累乗などの計算結果を再び累乗する際も同様である。ここでは、［×］の入力が一回で上述の累乗の計算を行う電子計算機を用いることを前提とする。【０００８】  ところが、整数の累乗は桁数がすぐに大きくなり、すぐに許容桁数を越える。すると、Ｅなどのエラー表示が出て計算の継続ができなくなる。しかし、整数部分の桁数が小さい小数を底とする累乗であれば、この限りでない。整数部分の桁数が許容桁数を越えない限り、計算の継続が可能である。例えば、８８８を累乗すると、５乗しただけで許容桁数を越え計算の継続ができないが、８８８を正規化して仮数部に入る数８．８８を５乗すると、整数部分の桁数が許容桁数を越えず、計算の継続が可能である。しかも、その結果を平方する、つまり［８．８８］→［×］→［＝］→［＝］→［＝］→［＝］→［×］→［＝］と入力すると、８．８８の５乗の平方、すなわち８．８８の１０乗の近似値として３０４８８０５０６８．６８と計算結果が表示される。そして、この計算結果を用いた計算の継続が可能である。【０００９】  ただし、この場合、｛＝｝キーを続けてあと１回でも押して累乗の計算を続けると、エラー表示が出て計算の継続ができなくなる。その際の計算は８．８８の１１乗ではなく１５乗となる。なお、許容桁数が１２の電子計算機で入力できる整数部分が一桁の小数のうちで最大のものである９．９９９９９９９９９９９の１０乗、すなわち９．９９９９９９９９９９９１０は１０１０より小さく、ゆえに１０１２より小さいから、整数部分が一桁の数を１０乗した結果の整数部分が１２桁を越えることはない。それゆえ、許容桁数が１２や１０の電子計算機では、整数部分が一桁の数を１０乗したときにエラー表示が出て計算の継続ができなくなることにはならない。【００１０】  許容桁数が１２の一般的な電子計算機を用いて、上述した方法で８．８８の１０乗を計算すると、３０４８８０５０６８．６８と計算結果を表示するが、真の数値の全桁を整数とみなした桁数が許容桁数を越えると、許容桁数を越えない範囲に存在する位、つまり上位十二桁のみ表示して、他はすべて切り捨てる。つまり、結果的に切り下げた数値を表示することになる。この場合の上位十二桁とは、整数部分が０であるときには、その位から下位に向かって数えたものである。ただし、切り上げや四捨五入などの切替スイッチを設けた電子計算機において、前記切替スイッチで切り替え、許容桁数を減少した条件下等で計算する場合は、この限りではない。【００１１】  小数を底とする累乗において、もし底の小数部分の位の個数に指数とする数を掛けた積が、計算結果として表示された��のの小数部分の位の個数より大きければ、切り下げた数値が表示されている。整数部分が０でない小数を底とする累乗の整数数部分は０でないことを踏まえていえば、真の数値の全桁を整数とみなした桁数は許容桁数を越えている。本方法で累乗の計算をする際には、常に、整数部分が０でない数を底とすることを留意する。【００１２】  ただし、一の位に入る数字が０の自然数を底とする場合、例えば１２３００を底とする場合、正規化して１０乗する際に１．２３１０と１．２３００１０のいずれを計算しても、本方法においては計算結果に影響を与えないので、１．２３の小数部分の位の個数、すなわち２に指数１０を掛けたときの積２０で考えるとする。その理由は後述する。ただし、段落番号「００１５」で数式を得る際には、注意を要する。もし計算結果として表示された数値が切り下げた結果であるか否かで不安であれば、整数部分が０でない数を底として与えられた場合は、自然数を底とするときは正規化せずに、小数を底とするときには全桁を整数とみなした数を累乗したときのエラー表示の有無により確認すればよい。なお、「小数部分の全桁を整数とみなした桁数」でなく「小数部分の位の個数」と表記した理由は、小数点以下第一位に入る数字が０の場合、例えば１２３．０４５６７の場合、前者は４である一方で、後者では５となるが、後者の５を用いて計算する必要を有するからである。【００１３】  例えば８．８８の１０乗の場合では、５乗した時点で切り下げた値、つまりこの方法で計算したときの８．８８の５乗の下限を表示することになる。そして、一旦切り下げた数値を表示すれば、つまり一旦許容桁数を越えれば、それ以降の計算結果の全桁を整数とみなした桁数は必ず許容桁数を越える。そして、前記計算結果は必ず真の数値より小さい。１０乗したときの計算結果３０４８８０５０６８．６８は、この方法で計算したときの８．８８の１０乗の下限となる。【００１４】  １０乗する際、｛＝｝キーを９回連続で押して計算したときや、まず平方し、次いでその結果を５乗して計算したときと比較して若干結果が異なることは有り得る。この例では、前者の結果と後者の結果は、いずれも上述の結果と若干異なる３０４８８０５０６８．６７となる。三つの計算結果がすべて同じであったり、逆にすべて異なったりするときもある。しかし、いずれの結果であっても、一旦切り下げたときの数値を用いて計算した結果である限り、真の数値より必ず小さく、真の数値以上になることは決してない。そして、これが非常に重要である。本願では、１０乗する際には、まず５乗し、次いでその結果を平方するとする。【００１５】  ところで、８８８の代わりに８．８８を用いて１０乗を計算したが、この計算は、限られた許容桁数の制約の下で行うためにとった方法であり、下記の数式１の仮数部に入る数を１０乗したに過ぎない。そこで、基数を１０とする累乗の部分１０２も同じく１０乗する。その際、その指数２に１０を掛けた積２０を指数とすればよい。そして、これを上述の計算結果３０４８８０５０６８．６８に掛けた形の数が、この計算方法により得られる８８８の１０乗の下限となる。このようにして、下記の数式２が得られる。数式１の指数部に入る数２は、８８８を正規化して８．８８とする際に小数点を左に移動して飛び越えた位の個数と等しい。【００１６】
【数１】
2015197907.tif 000031
【００１７】
【数２】
2015197907.tif 000032
【００１８】  もし８８８でなく８８８００が与えられたとし、それを正規化したときの仮数部に入る数８．８８００を累乗しても、本方法で計算した結果は、８．８８を累乗した結果と変わらない。しかし、表示された計算結果の全桁を整数とみなした桁数が許容桁数を越えるか否かを考える際には、８．８８００を８．８８として考えるとする。なぜならば、下二桁の００を含む桁数で考えたとき、それにより増加する累乗の下の桁の数字はすべて０だからである。しかし、数式２を得たときのように、８．８８００でなく８８８００の１０乗においての指数部に入る数の計算においては結果が変わるから、その際には数式１のように正規化した際に指数部に入る数４で考える。【００１９】  次に、数式２の右辺中の数値において正規化する、言い換えれば、整数部分が一桁となるように小数点を移動して３．０４８８０５０６８６８とする。その際、左に移動して飛び越えた位の個数９を指数部に入っている数２０に足せばよく、下記の数式３となる。請求項１などに記載の電子計算機は、小数点移動キーを押すと、この正規化をするものである。小数点移動キーを押す際に表示されている数の整数部分が一桁の場合には、小数点を移動する必要がなく、表示は不変のまま保持する。【００２０】
【数３】
2015197907.tif 000033
【００２１】  一般的な電子計算機は、整数を表示する際、整数を表記する際には普通は表記しない小数点を表示するものが少なくないようである。ただし、携帯電話などに内蔵された電子計算機などには表示しないものも多いようである。請求項２に記載の電子計算機は、そのような表示をしない電子計算機において、二桁以上の整数を表示しているときに小数点移動キーを押すと、整数部分が一桁となるように最高位とその次に下位の位の間に小数点を表示する。一桁の整数又は０．０００５のように０以外の数字が入る位が一つのみで絶対値が１より小さい小数を表示している場合に小数点移動キーを押すと、いずれの場合も、一桁の整数が表示されることになる。【００２２】  請求項３に記載の電子計算機は、小数点の移動を左にも右にも一つずつ移動することを特徴とする。整数若しくは整数部分が二桁以上の小数又は整数部分が一桁かつ整数部分の位の個数と小数部分の位の個数の合計が許容桁数より小さい小数を表示している際に押した場合にその数を１０で割った商を表示する小数点左移キーを設ける。つまり、小数点を左に一つ移動する。ただし、整数部分が一桁の小数を表示している場合で整数部分の位の個数と小数部分の位の個数の合計が許容桁数１２と等しいとき、つまり数字を表示する数字表示部のすべてを使用して表示したためにそれらに加えて数字を新たに追加して表示できないとき、表示している数値の下一桁を削除してなる数を１０で割った商を表示する。つまり前記小数の左側に０を添え、それと右隣りの位との間に小数点を移動して一桁切り捨てる。その結果として、前記小数を１０で割って一桁切り捨てた数が表示される。ただし、整数部分が一桁の小数の場合でも、整数部分の位の個数と小数部分の位の個数の合計が許容桁数より小さいときには、切り捨てる必要を有しない。又、小数点右移キーを設け、桁数が許容桁数より小さい整数又は小数を表示している際に押した場合にその数の１０倍の数を表示する小数点右移キーを設ける。つまり、小数点を右に一つ移動する。ただし、桁数が許容桁数と等しい整数の場合には、１０倍すると桁数が許容桁数を越えるから、小数点の移動は行わず表示は不変のまま保持し、又はエラー表示をして計算の継続をできなくする。【００２３】  請求項４に記載の電子計算機は、小数点移動キーを押して小数点を移動すると、移動して飛び越えた位の個数である越位数を表示することを特徴とする。以下、小数点を移動して飛び越えた位の個数を越位数と呼ぶとする。ただし、越位数の正負の符号は、小数点を左に移動した場合は正とし、右に移動した場合には負とする。正規化する際の指数の計算がし易い。【００２４】  請求項５に記載の電子計算機は、越位数の表示中に再び小数点移動キーを押す又は数秒間経過すると越位数を消去して小数点の移動後の数を表示する。つまり、元の計算結果に戻す。そして、以後、前記小数点移動キーを押すと小数点の移動後の数を消去して前記越位数を表示することと、前記小数点移動キーを押す又は数秒間経過すると前記越位数を消去して小数点の移動後の数を表示することを繰り返す。【００２５】  請求項７に記載の電子計算機は、指数の計算も行うことを特徴とする。上述の累乗の計算のような��数の大きな計算をする際、実際に行う計算は仮数部に入る数を用いた計算であり、請求項７に記載の電子計算機は大変便利である。請求項７に記載の電子計算機を用いて指数表記の形の数として入力する際、仮数部に入る数の入力後に指数キーを押し、その後に指数部に入る数を入力する。その際、１０を基数とする。前記指数キーを再び押すと、指数部に入る数の表示を消去し、仮数部に入る数を再び表示する。【００２６】  指数部の計算は次のようにして行う。掛け算や累乗の場合は、各々の因数や底とする数を指数表記したときにおける各々の指数部に入っている各々の数を足す。割り算の場合には、割られる数における指数部に入っている数から割る数における指数部に入っている数を引く。足し算又は引き算の場合には、足される数及び足す数又は引かれる数及び引く数の各々の指数部に入っている数が等しいときはそれらの指数部に入っている数はそれぞれそのままで、仮数部に入る数同士の計算を行う。等しくないときには指数部の計算のみでなく仮数部に入る数同士の計算も行わず表示は不変のまま保持し、又はエラー表示をして計算の継続をできなくする。そして、逆数の計算の場合には指数部に入っている数の正負を反転する。つまり、プラスとマイナスを入れ替える。ただし、０のときには０のまま保持する。逆数の計算を行うためには、数値を入力した後又は計算結果が表示された後に、［÷］→［＝］と入力すればよい。例えば、［１］→［＋］→［１］→［＝］→［÷］→［＝］と入力すると、その計算結果である０．５が表示される。特に、分母の計算が複雑だったり、分母の計算結果の桁数が大きかったりしたときに便利である。ただし、電子計算機のメーカーや機種により、この逆数の計算ができないものもある。【００２７】  指数部に入る数の入力を省くと、指数部に入る数を０として計算する。その際、仮数部に入る数と、指数表記の形としての数は、結局、同じ数となる。足し算の場合で足される数と足す数の各々の指数部に入っている数が等しいときにおいて、計算結果の整数部分の桁数が許容桁数を越えると、エラー表示を出して計算の継続をできなくする。
【発明の効果】
【００２８】  以上に述べたようにして許容桁数を越える大きな数を計算した結果は、上述したように真の数値ではなく下限であるが、近似値でよければ、後述の計算のような桁数がよほど大きくない限り、これだけでも十分有用である。しかし、それに加えて、上限も計算すれば、いっそう有用である。下限と上限の両方がわかれば、桁数がかなり大きい数の桁数や上位の複数の位に入る数字を確定できる。【００２９】  以下、上限を計算するメリットについて述べる。上限の具体的な計算方法については「発明を実施するための最良の形態」で述べる。【００３０】  請求項６に記載の電子計算機で計算すれば、後述する方法をとらずに下限のときと同様に累乗の計算と正規化を行うのみで、容易に上限を計算できる。ただし、従来の一般的な電子計算機でも、後述する条件を満たせば、ある程度手間や時間がかかるものの、上限の計算は可能である。その条件や具体的な方法については、上述したように「発明を実施するための最良の形態」で述べる。【００３１】  上記で８８８の１０乗の下限を計算したが、後述する上限の計算方法で計算すると、下記の数式４を得られる。つまり、下限を示した数式３とあわせて下記の数式５が得られる。８８８１０の真の数値は、必ず数式５の範囲内に存在する。【００３２】
【数４】
2015197907.tif 000034
【００３３】
【数５】
2015197907.tif 000035
【００３４】  次いで、数式５の第一辺中の仮数部に入る数を用いて、８８８の１０乗の１０乗の上限、すなわち８８８の１００乗の上限を計算する。そして、その一方で８８８の１００乗の下限も同様にして計算すると、下記の数式６が得られる。勿論、８８８１００の真の数値は、必ず数式６の範囲内に存在する。【００３５】
【数６】
2015197907.tif 000036
【００３６】  これを繰り返して全部で八回行うと、一般的な電子計算機で計算して下記の数式７を得られる。【００３７】
【数７】
2015197907.tif 000037
【００３８】  そして、この結果として、８８８の１億乗という非常に大きな数が２億９４８４万１２９７桁であることが確定するのみでなく、上位四桁の数字の確定ができる。下記の数式８の右辺中の仮数部に入る数の上位四桁の数字の３、７、８、そして３である。なお、仮数部に入る数の全桁を整数とみなした桁数は、最初の１０乗の直前に行う正規化の際の越位数２の桁数が０以外の１であることにより、このケースでは、指数部に入る数より１大きい２億９４８４万１２９７である。そして、これが、８８８の１億乗の桁数と等しい。【００３９】
【数８】
2015197907.tif 000038
【００４０】  さらに続けると、下記の数式９が得られる。そして、８８８の１０００億乗が２９４８億４１２９万６５７８桁であることがわかる。ただし、上位の位に入る数字は、最高位に入る数字のみが７と確定できる。【００４１】
【数９】
2015197907.tif 000039
2015197907.tif 000040
【００４２】  さらに１０乗したときの下限と上限をそれぞれ計算すると、下記の数式１０が得られる。そして、８８８の１兆乗が２兆９４８４億１２９６万５７７９桁であることがわかるものの、最高位に入る数字は２から７までのいずれかであるという限定しかできない。以後、最高位に入る数字すら確定できない。【００４３】
【数１０】
2015197907.tif 000041
【００４４】  さらに１０乗したときの下限と上限をそれぞれ計算すると、下限における正規化する前の仮数部に入る数は５５１７７．４７９７２６７、上限の同じく正規化する前の仮数部に入る数は３６４６３３０８６．６３７となり、下記の数式１１のように小数点の位置が異なる。つまり、整数部分の桁数が異なる。この時点で、８８８の１０兆乗の桁数においての一の位に入る数字は４から８までのいずれかと限定できるものの、確定はできなくなる。つまり、８８８の１０兆乗の桁数は２９兆４８４１億２９６５万７７８４から２９兆４８４１億２９６５万７７８８までのいずれかであると限定できるものの、確定はできなくなる。なお、数式１０中の下限の仮数部に入る数と上限の仮数部に入る数をそれぞれ平方した時点、つまり８８８の２０兆乗の時点で桁数を確定できない。【００４５】
【数１１】
2015197907.tif 000042
【００４６】  もし、数式１１にあたる数式において、下限を正規化し、かつ下限を正規化した際の越位数を指数とする１０の累乗数で上限を割る、つまり数式１１でいえば、下限を正規化する際に仮数部に入る数５５１７７．４７９７２６７を割った数１０４で上限の仮数部に入る数３６４６３３０８６．６３７を割って得た数式が、下記の数式１２のような結果になれば、四回目の１０乗の直後に正規化する際の越位数が下限と上限で異なり、ｘ１００００の桁数が確定できない。ただし、上限を正規化して仮数部に入る数がちょうど１であれば、後述するように、四回目の１０乗の際の越位数においては上限のときの方が下限のときより１大きいものの、ｘ１００００の桁数を確定できる。最初の１０乗の直前に正規化する際の越位数を０以外の一桁とし、それをａとおく。最初の１０乗の直後に正規化する際の越位数、二回目の１０乗の直後に正規化する際の越位数、そして三回目の１０乗の直後に正規化する際の越位数をそれぞれｂ、ｃ、そしてｄとおく。そして、もし下限を計算するときの四回目の１０乗の直後に正規化する際の越位数を５とすると、上限を計算するときの同じく四回目の１０乗の直後に正規化する際の越位数は、５に１を加えた和６である。そして、このとき、ｘ１００００の桁数における上位四桁の数字しか確定できない。そして、五回目以降も計算し、十二回目まで計算したときの得られる数式は、ａ〜ｄをそれぞれ入る位に並べて表記すると、下記の数式１３となる。この例のように、たとえ下限と上限の差の絶対値のそれらに対する割合がそれぞれ極めて小さくても、上位四桁の数字しか確定できないケースも有り得るが、この例のようなケースに限られる。【００４７】
【数１２】
2015197907.tif 000043
【００４８】
【数１３】
2015197907.tif 000044
【００４９】  もし、この例のように最初の１０乗の直前に正規化する際の越位数が０以外の一桁の数の場合で上位四桁の数字しか確定できなければ、そのとき、１０乗して小数点を移動することを繰り返して全部で四回行ったときの下限の正規化後の仮数部に入る数は必ず９．９９９９９７５２６２６より大きく、かつ上限の正規化後の仮数部に入る数は必ず１．００００００２４７３８より小さく、かつ上述したように四回目の１０乗の直後に正規化する際の越位数においては上限のときの方が下限のときより１大きい。そして、はじめて異なる越位数となった四回目の１０乗の次の１０乗、すなわち五回目以降の１０乗の直後に正規化する際の越位数は、下限では９、上限では０となり、これが少なくとも十回目までそれぞれ続く。数式１２の例では、数式１３の結果のように十一回目まで続く。もし十四回目まで続けると、最後の１０乗の正規化後に下記の数式１４が得られる。【００５０】
【数１４】
2015197907.tif 000045
【００５１】  本願の各請求項に記載の電子計算機で対数の精密な計算を容易にできるが、一般的な電子計算機でも可能である。以下、一般的な電子計算機でも可能な対数の精密な計算方法を説明する。後述する「実施例」では、流れ作業的な手順で対数の精密な計算を行う具体的方法を説明する。【００５２】  まず、１０を底とする８８８の対数、つまり８８８の常用対数であるｌｏｇ１０８８８を計算する方法を述べる。【００５３】  ８８８は、上記で累乗を計算したときの底とした数であり、上記の累乗の計算結果を利用する。例えば８８８を１億乗した時点の結果として数式７が得られたが、数式７のように正規化後の下限の指数部に入る数と上限の指数部に入る数が等しいとき、それらの共通する数２９４８４１２９６を、８８８の累乗の指数１億で割った商２．９４８４１２９６と、ｌｏｇ１０  ８８８の真の数値の上位の位とで対応する位に入る数字はそれぞれ必ず一致する。そして、下記の数式１５の結果が得られる。入る数字が確定する位の個数は、下限の指数部と上限の指数部に共通して入る数の桁数と等しい。この例では上位九桁の数字が確定する。数式８の右辺中の指数部に入る数を同式の左辺中の指数１億で割ってもよい。【００５４】
【数１５】
2015197907.tif 000046
【００５５】  以上に述べたように真数とする数の累乗を計算し、下限の指数部と上限の指数部に共通して入る数を指数で割ると、求める常用対数が得られる。入る数字が確定する位の個数については、整数部分が０の場合は、最高位から下位に向かってみて０でない数字がはじめて現れる位から数えるとする。例えば小数点以下第六位まで０．００１２３４と確定したときは、入る数字を確定した位は四つと数えるとする。上位四桁の数字を確定と書くときも同様とする。【００５６】  ８８８の累乗を上記で数式１０を計算したように１兆乗まで計算した時点までは、正規化後の下限の指数部に入る数と上限の指数部に入る数が等しいため、そのときのそれらの共通する数２兆９４８４億１２９６万５７７８を１兆で割って得たとき、最も多い上位十三桁の数字が確定する。この例では下記の数式１６となり、上位十三桁の数字が確定する。不等式で書くと、下記の数式１７となる。【００５７】
【数１６】
2015197907.tif 000047
【００５８】
【数１７】
2015197907.tif 000048
【００５９】  上限を計算した結果として表示された数値の切り上げる前の全桁を整数とみなした桁数が許容桁数と等しく、かつそれらの位に入る数字がすべて９、つまり表示された結果が９９９…９．９…９であり、切り上げたことにより１０００…０．０…０となり整数部分の桁数が１増加した結果として切り上げる前の結果より切り上げた後の結果の方が越位数が１大きいとき、切り上げた後の数値による越位数で考える。そして、このとき、正規化後の仮数部に入る数はちょうど１となるが、１の累乗のすべてがちょうど１だから、以後の計算の結果は、常に、ちょうど１で越位数は０となる。そこで、切り上げた後に正規化を行った結果がちょうど１となった時点で計算を終了し、その際の結果により定まる位までの数値を上限とする。下限においても、正規化を行った後の仮数部に入る数がちょうど１となった時点で計算を終了する。もしいずれもそのような結果となれば、いずれも終了するが、そのときのそれらの越位数は必ず異なる。数式１７の上限はこのケースにあたらないが、同式のように小数点以下第十二位までとったときの下限の同位に入る数字は８でなく８に１を足した和である９とする。【００６０】  次に、１０以外の数を底とするときの対数の計算について述べる。【００６１】  底を変換する有名な公式である下記の数式１８を利用する。例えば、ｌｏｇ２  ３の場合、数式１８を利用すると下記の数式１９のように常用対数のみで表わされる。よって、ｌｏｇ１０  ３とｌｏｇ１０  ２をそれぞれ上述した方法で計算して前者の計算結果を後者の計算結果で割ればよい。そして、ｌｏｇ２  ３の下限と上限を計算する際、確実に下限は真の数値より小さく、上限は真の数値より大きくするために、下限においては割られる数であるｌｏｇ１０  ３の下限を、割る数であるｌｏｇ１０  ２の上限で割って切り下げ、逆に、上限においては割られる数ｌｏｇ１０  ３の上限を、割る数ｌｏｇ１０  ２の下限で割って切り上げた。ｌｏｇ１０  ３とｌｏｇ１０  ２をそれぞれ上述の計算方法で得られる結果はそれぞれ０．４７７１２１２５４７…と０．３０１０２９９９５６…だから、それらを用いて計算したときのｌｏｇ２  ３の計算結果は、下記の数式２０となる。又、不等式で書くと、下記の数式２１となる。このようして、実際には常用対数の計算を行うものの、１０以外の数を底とする対数の計算も可能である。【００６２】
【数１８】
2015197907.tif 000049
【００６３】
【数１９】
2015197907.tif 000050
【００６４】
【数２０】
2015197907.tif 000051
【００６５】
【数２１】
2015197907.tif 000052
【００６６】  次に、桁数が許容桁数を越える数を真数とする場合の対数の計算方法について述べる。【００６７】  例えば１２３４５６７８９０１２３４５を真数とする場合、許容桁数が１２の電子計算機に入力するために、許容桁数を満たさない範囲に存在する位のうちで最も上位の位で、すなわち上位十三桁目を四捨五入し、その結果の上位１２桁１２３４５６７８９０１２を仮数部に入る数とし、１０を基数として指数表記したときの数で考える。つまり、この場合、１２３４５６７８９０１２×１０３を底として考える。そして、対数の有名な公式である下記の数式２２を利用すると、仮数部に入る数は許容桁数を満たし、それを真数とする常用対数、つまりｌｏｇ１０  １２３４５６７８９０１２の計算で済む。そして、上述した方法でｌｏｇ１０  １２３４５６７８９０１２を計算すると、上位十三桁の数字が確定し、その結果は１１．０９１５１４９７７２１だから、ｌｏｇ１０  １２３４５６７８９０１２０００を下記の数式２３のように計算できる。【００６８】
【数２２】
2015197907.tif 000053
【００６９】
【数２３】
2015197907.tif 000054
【００７０】  真数とする数の上位十三桁目の数字が３であるが、あえて切り上げた結果１２３４５６７８９０１３を真数として計算すると、切り捨てて計算したときと同じく上位十三桁の数字が確定し、その結果は変わらない。つまり、この場合、ｌｏｇ１０  １２３４５６７８９０１２３４５の上位十三桁の数字を確定できる。もし四捨五入して上位十二桁目の数字が０となれば、その位から上位に向かってみて０でない数字がはじめて現れる位までの上位十一桁以内の数を真数としてもよい。全桁を整数とみなした桁数が許容桁数を越える小数を真数とする場合も、真数とする数を正規化して仮数部に入る数を四捨五入などをして得た上位十二桁を真数とする常用対数が、数式２２中のｌｏｇａ  ｔにあたるものである。【００７１】  小数を真数とする場合も，以下に述べるようにして基本的に同様に計算できる。【００７２】  二桁以上の自然数で最高位以外の位に０以外の数字が入る位が少なくとも一つあるものを真数とする場合を考えると、最初の１０乗の直前に行う正規化後の仮数部に入る数は小数であり、それを真数としたときと比較して考えると、最初の１０乗の直前に正規化する際の越位数が異なるのみで、それ以後の計算は特に変わらないことからわかる。ただし、整数部分が０のときには、小数点右移キーを押して、整数部分を０以外の一桁の数とし、以後、同様にして計算すればよいが、数式７や数式１０などにあたる数式においての各々の下限や上限の各々の指数部に入る数は各々負となり、それゆえ得られる常用対数は、負であることに注意する。数式２２を用いて説明すると、同式中のｎの値にあたる値が−１以下の負の整数で、ｌｏｇａ  ｔにあたる常用対数の数値は０以上１未満だからである。そして、それら二つの数の和が得られる常用対数であるが、その結果として、数式７や数式１０にあたる数式の指数部に入る数を、指数とする数で割った商の小数部分の各位に入る数字と、求める常用対数の真の数値の小数点以下の対応する位に入る数字がそれぞれ一致するわけではないことに注意する。又、小数点右移キーを押して正規化する際に小数点は右に移動するから、その際に飛び越えた位の個数を絶対値とする負の整数が越位数であり、ｎの値にあたる値は前記越位数と等しい。しかし、注意を要するケースがある。それは、１以外で１に極めて近い小数を真数とするケースである。以下、そのケースについて述べる。【００７３】  そのとき、その常用対数は０に極めて近い数となり、真数とする数が１のときを除いて１に近ければ近いほど、最高位から下位に向かってみて０以外の数字が入る位がはじめて現れる位から下位に向かってみて、前記位から連続して下限と上限とで対応する位に入る数がそれぞれ一致する位は、数式１２のようなケースでなくても少ない。例えば１＋１０−７を真数とするとき、数式１２のようなケースでないにもかかわらず、三つしかない。１＋１０−１１を真数とするときには、数式１２のようなケースでないにもかかわらず、一つもない。このような結果は、次に述べることに起因する。本方法においての１０乗して小数点を移動することを繰り返す方法は、最初の１０乗の直前に正規化する際の越位数、つまり求める常用対数の整数部分を除いて、���限や上限においての小数点以下の各位に入る数字をそれぞれ計算するものであることに起因する。ただし、１より小さい数を真数とするときは、上述したように、数式２２中のｌｏｇａ  ｔにあたる常用対数の数値と、ｎの値にあたる値との和が得られる常用対数である。１＋１０−１１を真数とするときにおいても、小数点以下第一位から下位に向かって０が入る位か否かにかかわらずみるとすると、下限と上限のそれぞれの小数点以下第十一位まで、それぞれ十一個の位に入る数字はすべて０であって、それら十一個の位で対応する位に入る数字がそれぞれ一致するが、下限と上限のいずれもにおいても最高位から下位に向かってみて０以外の数字が入る位がはじめて現れる位である小数点以下第十二位に入る数字が一致しない。しかし、このケースでも、真の数値と上位五桁以上が一致する結果を容易に得られる。１以外で１−１０−６以上１＋１０−６以下の数を真数とするとき、本方法で得られた下限は、真の数値と少なくとも上位五桁以上が一致する。その際に上限を計算してはさみうちを行って確定すると、真の数値と一致する上位の桁数が減少することはあっても増加することはなく、むしろ不要である。下限と真の数値の上位五桁以上が一致する理由は、１以外で１−１０−６以上１＋１０−６以下の数を真数とするとき、１０乗の計算をしたときの切り捨てる量の割合が、特にはじめの数回は、極めて小さく、下限と真の数値の差が極めて小さいからである。【００７４】  １＋１０−６，１＋１０−７の１＋１０−８，…，１＋１０−１１をそれぞれ真数とするときの下限はそれぞれ０．００００００４３４２９，０．０００００００４３４２９，０．００００００００４３４２９，…，０．０００００００００００４３４２９である。指数が１減少するたびに十分の一となることに着目すると、ｍの値が６以上１１以下の自然数のときの１＋１０−ｍを真数として本方法で計算した常用対数の下限に１０ｍを掛けた積は、一定であり、又、上位五桁まで計算した結果は、すべて０．４３４２９となる。１より小さい１−１０−ｍを真数とするときでも、正負の符合が異なることを除いて、上記と同様に一定であり、−０．４３４２９の結果となる。【００７５】  例えば１＋３５７×１０−１１を真数とするときの常用対数の下限を本方法で小数点以下第十六位まで計算した結果は、０．００００００００１５５０４２６３である。１＋１０−１１を真数として常用対数の下限を本方法で同じく小数点以下第十六位まで計算した結果０．０００００００００００４３４２９と比較すると、３５７．００２５３…倍である。そして、前者の真数とした数１＋３５７×１０−１１から１を引いた差の絶対値３５７×１０−１１は、後者の真数とした数１＋１０−１１から同じく１を引いた差の絶対値１０−１１の３５７倍であり、ほぼ等しい。このケース以外でも、例えば１＋３５７×１０−８を真数とするときと、１＋１０−８を真数とするときでも、計算を要する位は異なるものの、同様にして比較すると、同様な結果となる。１−１０−ｍのケースでも同様である。そこで、真数とする数が１±１０−ｍであるか否かにかかわらず、１以外で１−１０−６以上１＋１０−６以下の数を真数とするとき、すなわち整数部分が１で小数点以下第一位から少なくとも同第五位まで０が連続して入る数又は整数部分が０で小数点以下第一位から少なくとも同第六位まで９が連続して入る数を真数とするとき、数式１２のようなケースでない限り、下限のみを本方法で計算すれば、上位五桁以上が一致する結果が得られる。ただし、上限とのはさみうちを行わないので、五桁を越えるか否かはわからない。数式１２のようなケースでない限り、このケースのうちで１より大きい方のケースは上位五桁又は六桁が一致し、他方の１より小さい方のケースでは上位五桁から七桁までのいずれかである。又、１との大小の関係にかかわらず、１との差の絶対値が大きい方が誤差が小さくなりやすい。又、１より小さいケースの方が比較的誤差率が小さく、一致する上位の桁が多くなりやすい。１以外で１−１０−６以上１＋１０−６以下の数でない数を真数とするときには、数式１２のようなケースでない限り、下限のみを本方法で計算して上述の結果以上の結果が得られ、加えて上限の計算もしてはさみうちを行えば、数式１２のようなケースでない限り、小数点以下第十二位か、それに近い位までに入る数字をそれぞれ確定できる。【００７６】  上述した「ｍの値が６以上１１以下の自然数のときの１＋１０−ｍを真数とする常用対数においての本方法で上位五桁まで計算した下限に１０ｍを掛けた積」である０．４３４２９は、段落番号「００８１」で後述するように、ｌｏｇ１０  ｅの近似値でもある。そして、ｍの値が限りなく無限大に近づくときの極限値はｌｏｇ１０  ｅである。よって、対数の定義により、自然対数の底であるネイピア数ｅの値は、「１＋１０−ｍを真数とする常用対数に１０ｍを掛けた積を指数とする１０の累乗数」においてのｍの値が限りなく無限大に近づくときの極限値と等しい。又、ネイピア数ｅの近似値として、１００．４３４２９が得られる。実際に１００．４３４２９を関数電卓で計算すると、２．７１８２７２５…と算出され、ネイピア数ｅの真の数値２．７１８２８１８…と上位五桁が一致する。なお、一般的な電子計算機で１００．４３４２９の近似値を計算できる。ただし、指数０．４３４２９が１０の累乗数でないため、累乗する際に段落番号「０１２６」で後述する方法をとり、加えて出願日が平成２６年５月３０日で特許出願番号２０１４−１２４７４１の電子計算機の計算に関する特許出願に記載の計算方法も併用して１００．４３４２９を計算する。そして、一般的な電子計算機でネイピア数ｅの値を上位五桁まで確定できる。本出願人は、実際に、一般的な電子計算機で計算してネイピア数ｅの近似値を２．７１８２５と算出したが、これは、真の数値である２．７１８２８１８…と上位五桁が一致する。【００７７】  自然科学などで、自然対数がよく用いられる。その際に、数式１８の公式を利用して数式１９のように底の変換を行うと、自然対数の底であるｅを底でなく真数とする常用対数、すなわちｌｏｇ１０  ｅの計算を要することになる。そこで、ｌｏｇ１０  ｅについて述べる。【００７８】  ｌｏｇ１０  ｅの真の数値は、０．４３４２９４４８１９０３…であるが、もしネイピア数ｅの値２．７１８２８１８２８４５…の上位１２桁の数字を知っていて、２．７１８２８１��２８４５を真数とする常用対数を本方法で下限と上限を計算してはさみうちを行うと、小数点以下第一位から数えて上位十一桁の数字を確定できる。なお、切り上げた結果である２．７１８２８１８２８４６を真数としても、結果は変わらない。つまり、ネイピア数ｅの値を上位十二桁までしか知らなくても、ｌｏｇ１０  ｅの上位十一桁の数字を確定できる。もしネイピア数ｅの値で上位十一桁以下の数字しか知らなければ、数字を確定できる上位の桁数は減少する。例えば上位八桁の数字を知っていてはさみうちを行うとすると、０．４３４２９４４７７３５と上位十一桁が確定されるが、この数値は、小数点以下第一位から数えて上位七桁しか真の数値と一致せず、下四桁は真の数値の対応する四桁と一致しない。しかし、それは、２．７１８２８１８を真数とする常用対数、つまりｌｏｇ１０  ２．７１８２８１８の数値としては、小数点以下第一位から数えて上位十一桁の数字が一致するものであり、真数とした数のネイピア数ｅの値に対する誤差が比較的大きいことに起因する。もし上位九桁目の数字が２であることを知っていて、四捨五入すると切り捨てるケースであることをたとえ知っていたとしても、敢えて切り上げたときの上位八桁で常用対数の計算を行う、すなわちｌｏｇ１０  ２．７１８２８１９の計算を本方法で行うと、０．４３４２９４４９３３３…と結果が得られ、ｌｏｇ１０  ２．７１８２８１８の結果とはさみうちして、小数点以下第一位から数えて上位八桁について、下記の数式２４が得られる。そして、下記の数式２５のように、ｌｏｇ１０  ｅの小数点以下第一位から数えて上位七桁が０．４３４２９４４であると確定できる。数式２４の上限において、小数点以下第七位に入る数字は５であるが、上述の切り上げたときの結果０．４３４２９４４９３３３…を切り上げて上位八桁までとったときの上限とする際に切り上げた結果であるから、小数点以下第七位に入る数字は４であると確定される。切り上げて上位八桁までとった結果でなく、上述の結果の０．４３４２９４４９３３３…のままで考えてもよい。【００７９】
【数２４】
2015197907.tif 000055
【００８０】
【数２５】
2015197907.tif 000056
【００８１】  段落番号「００７６」で述べたように、一般的な電子計算機でネイピア数ｅの値の上位五桁の数字を確定できる。ただし、実は、これとは別の方法でネイピア数ｅの近似値を一般的な電子計算機で計算できる。ネイピア数ｅの値の計算式として有名な公式である「１とｎの逆数を足した和のｎ乗において、ｎの値が限りなく無限大に近づくときの極限値」の近似値を、本願の累乗の計算方法を用いて計算すればよい。許容桁数が１２の電子計算機で入力する際に上述の計算式中のｎのとり得る最大の値は１０の１１乗だから、１＋１０−１１の１０乗を１１回繰り返したときの下限を計算すると、２．７１８２７３５４４７９の結果が表示される。これは、段落番号「００７６」で行ったときと同じく、真の数値２．７１８２８…と上位五桁が一致する。段落番号「００７６」で行った方法は、真数とする数自体がｅの近似値であって、その常用対数の近似値を、対数の定義により、再びｅの近似値である元の真数とした数に戻すもので、上述の方法と本質的に変わらない。【００８２】  整数部分が０以外で一桁の正の小数又は一桁の自然数において、許容桁数が１２の電子計算機の許容桁数を満たす最大のものは、全桁を整数とみなした桁数が許容桁数１２と等しく、かつそれらの位に入る数字がすべて９のときの９．９９９９９９９９９９９である。その平方の上限においても、切り上げたことにより、小数点の位置が異なるものの、全桁を整数とみなした桁数は許容桁数と等しく、かつそれらの位に入る数字がすべて９の数となり、以後、前回の１０乗の上限を正規化して仮数部に入る数を１０乗することを何回繰り返しても、上限においては、小数点の位置以外は不変であり、又、越位数は常に９である。つまり、正規化後の仮数部に入る数は不変である。しかし、下限においては、正規化後の仮数部に入る数は減少する一方であり、９．９９９９９９９９９９９を１兆乗した時点までは下限と上限のそれぞれの正規化後の仮数部に入る数の整数部分の桁数は等しいが、１０兆乗した時点では異なる。それゆえ、全桁を整数とみなした桁数が許容桁数と等しく、かつそれらの位に入る数字がすべて９の数の常用対数、つまりｌｏｇ１０  ９．９９９９９９９９９９９の数値は、小数点以下第一位から小数点以下第十二位までの位のすべてに９が入ると確定される。【００８３】  段落番号「００７４」などで述べた１−１０−ｍのケースで、許容桁数が１２の電子計算機に入力できるもので１に最も近いものは０．９９９９９９９９９９９であるが、最初の１０乗の直前に行う正規化の前でなく、正規化の後の仮数部に入る数の入力からはじめるとすれば、全桁を整数とみなした桁数を１１でなく、１増加して１２としたときの０．９９９９９９９９９９９９の計算が可能である。そして、そのとき、最初の１０乗の直前に行う正規化後の仮数部に入る数は上述のケースと同じく９．９９９９９９９９９９９である。ゆえに、その上限の計算において、最初の１０乗の直前に行う正規化の際の越位数を除いて越位数は常に９であり、数式２２中のｌｏｇａ  ｔにあたる常用対数の数値は、整数部分が０で、小数点以下の位に９が連続して無限に入る数、すなわち１と完全に等しく、ゆえに同式中のｎの値にあた��値が−１であることにより、０．９９９９９９９９９９９９を真数とする常用対数ｌｏｇ１０  ０．９９９９９９９９９９９９においての本方法により得られる上限としては０となる。ただし、ｌｏｇ１０  ０．９９９９９９９９９９９９の上限が０であっても、それは、０以下ではなく、０未満であることに注意する。【００８４】  逆に、整数部分が０以外で一桁の正の小数又は一桁の自然数のうちで最小のものは１である。その累乗は常に１であり、その桁数１は許容桁数を満たすから、切り上げは不要である。よって、何乗しても、下限と上限は、それぞれ計算するまでもなく、いずれも常に１である。又、最初の１０乗の直前に行う正規化の際の越位数を除いて越位数は常に０である。よって、１０の累乗数を底とする常用対数は、最初の１０乗の直前に行う正規化の際の越位数を整数部分とし、小数点以下の位には０が無限に連続して入る数となり、つまりそれは前記越位数と等しい。このケースの最初の１０乗の直前に行う正規化の際の越位数は、真数とする１０の累乗数においての指数とする数と等しい。もし、例えば五回目の１０乗の直後に行う正規化後の仮数部に入る数がちょうど１になれば、求める常用対数においてのその結果により入る数字が定まる位である小数点以下第五位より一つ下位の位、つまり小数点以下第六位から下位に向かって無限に連続して０が入る。よって、もし正規化後の仮数部に入る数がちょうど１になれば、その後の下限又は上限の計算は不要である。他方の上限又は下限の計算は、同時にそのようにならない限り不要ではない。上限の正規化後の仮数部に入る数がちょうど１となったときの越位数は、後述するように、切り上げた後の結果で考える。【００８５】  数式１４において、下限の指数部に入る数を第二辺中の指数１００兆で割った商は、ａ．ｂｃｄ５９９９９９９９４６３であり、上限の指数部に入る数を同じく１００兆で割った商はａ．ｂｃｄ６０００００００４３９である。よって、ｌｏｇ１０  ｘを小数点以下第十四位まで計算したときの下限はａ．ｂｃｄ５９９９９９９９４６３であり、上限はａ．ｂｃｄ６０００００００４４０である。ｌｏｇ１０  ｘの真の数値はこれらの間に必ず存在し、ゆえにこれらの間に存在するいずれの数値をとっても、真の数値との誤差の絶対値は上限と下限の差の絶対値未満である。よって、その誤差率は、上限と下限の差の絶対値においての下限に対する割合より小さい。【００８６】  数式１３の結果が得られ、そして例えば有効数字十桁を要するとすれば、ａ．ｂｃｄ６０００００とすればよい。この例では、要する有効数字が五桁から十一桁までのいずれかであれば、ａ．ｂｃｄ６０００…０とすればよい。０００…０の０の個数は、要する有効桁数により、それぞれ０から６までのいずれかである。ただし、たとえもし下限を計算して九回目までの計算の結果が数式１２の第一辺のような結果になったとしても、上限の結果が同式の第三辺と異なり、下限では９、上限では０がそれぞれ入るという関係が必ず成り立つ位に０でなく９が連続して入れば、下限と上限の対応する位で入る数字が最高位から下位に向かってみて連続して一致する限り確定としてよい。そのとき、数式１２の例では下限のときと上限のときとで異なった結果となった四回目の１０乗の直後に正規化する際の越位数は一致する。
【発明を実施するための最良の形態】
【００８７】  「発明の効果」で上限を計算するメリットについて述べた。ここでは、その具体的な計算方法について述べる。【００８８】  ８．８８の１０乗の計算をする際に、本方法では、一度に十個の８．８８を乗じて１０乗するのではなく、実際には、一つずつ掛け算を順次行う。５乗の次は１０乗の計算を行うが、５乗した結果を平方するのであって、その際の計算も、やはり二つの数を乗じる掛け算とみなせる。この点を留意する。ところで、８．８８の例では５乗した時点の計算結果で許容桁数を越える。そして、５乗の計算結果として表示される５５２１５．９８５６２６３は、切り捨てた数値であり、この計算により得られる５乗の下限である。その区別をつけるためには、次に述べるようにすればよい。底とする数の小数部分の位の個数２に指数５を乗じた積１０より、表示された計算結果の小数部分の位の個数７の方が３小さいから、５乗の真の数値の全桁を整数とみなした桁数は許容桁数より３大きく、その結果として、３桁切り捨てた数値が表示されている。この計算は、一の位に入る数字が０でない自然数を底とする累乗の一の位に入る数は０でないことに起因する。ただし、一の位に入る数字が０の自然数を底とするときには、例えば８８８００を底とするときには、正規化後の仮数部に入る数を８．８８００や８．８８０でなく８．８８とみて、上述の切り捨ての有無の区別をつけるための計算をする際の小数部分の位の個数を２とすればよいが、数式１にあたる数式の右辺中の指数部に入る数は、２でなく正規化したときの越位数である４とする。【００８９】  繰り返しになるが、請求項６に記載の電子計算機で上限を容易に計算できる。ただし、他の請求項に記載の電子計算機、あるいはＣａｎｏｎ製などのメーカーや機種によっては、後述の条件を満たせば、手間と時間がある程度かかるものの、上限の計算が可能である。以下、上限を計算するための条件を満たした電子計算機でも計算できる手順で説明する。請求項６に記載の電子計算機以外の電子計算機で上限を計算する際、修正キーを用いて上限を計算する。電子計算機のメーカーや機種にもよるが、本来は誤入力した数値の修正を行う修正キーを用いて、入力した数値でなく、計算結果として表示された数値の変更を行うことができるものもある。それが、請求項６に記載の電子計算機以外の電子計算機で上限を計算するための条件である。ここでは、それが可能な電子計算機を用いることを前提とする。出願人の知る限りでは、大手ではＣａｎｏｎ製しか、この方法では計算ができない。具体的手順を表記する際の修正キーの入力を、［⇒］と表記するとする。【００９０】  以下、上限を計算するための条件を満たした電子計算機でも上限を計算できる手順で、上限を計算する具体的方法を説明する。【００９１】  上述の８．８８の５乗の計算で切り捨てた数値５５２１５．９８５６２６３が計算結果として表示された際に、修正キーを一回押すと、上位十二桁の数字のうちで右端の数字３が一つ消去される。その後、消去した数字に１を加えた和４を入力すると、上限を得られる。つまり、切り上げた結果と等しい５５２１５．９８５６２６４が表示される。具体的には、上述の例で５乗の上限を得るまでの具体的手順は、��８．８８］→［×］→［＝］→［＝］→［＝］→［＝］→［⇒］→［４］と入力すればよい。ただし、８８８を８．８８と正規化する際の入力は省いてある。以下、同様である。このケースでは、４乗までは全桁を整数とみなした桁数が許容桁数を越えないから、切り上げる必要は有しない。もし４乗までの計算結果の一つ又は複数をそれぞれ切り上げても、切り上げた後の数値が真の数値より大きいという条件は、勿論、満たすが、単に、誤差率が大きくなるだけで、デメリットはあってもメリットはない。なお、計算結果５５２１５．９８５６２６３が表示された直後に修正キーを押さずに、例えば｛４｝と押しても、通常は、単に４のみが表示されるだけである。【００９２】  もし表示された計算結果の全桁を整数とみなした桁数が許容桁数と等しい１２であり、かつ前記計算結果の各位に入る数字のうちで右端にある数字が９であれば、修正キーを２回押して右端から数えて二つ目の位に入る数字に１を加えた和を入力し、続けて０を入力する。もし右端の位から上位に向かって連続して複数の位に９が入っていれば、それらをすべて消去し、次いで、それらに加えてもう一つの位、つまり前記計算結果の各位で９でない数字が入っている位のうちで最も下位の位に入っている数字を一つ消去してから、その数字に１を加えた和を入力し、次いで消去した９と同じ個数の０を入力する。【００９３】  ただし、整数部分に存在する位に入る数字を一つでも消去したとき、言い換えれば、一の位に入っている数字を消去したとき、一の位に入る数字を入力した直後に小数点の入力を行う。小数点の入力は［．］と表記するとする。例えば、計算結果が９８７６５４３９９．９９９と表示されたときに上限を得るとすれば、［⇒］→［⇒］→［⇒］→［⇒］→［⇒］→［⇒］→［４］→［０］→［０］→［．］→［０］→［０］→［０］と入力する。その結果、９８７６５４４００．０００と表示される。ただし、これらの０のうちで小数部分に存在するものの入力の有無はそれ以後の計算結果に影響を与えないから、省いてよいが、整数部分に存在するものは入力して９８７６５４４００とする。この際には小数点の入力は要しない。上述の例のように小数点第一位から下位に向かってみて０が連続して並ぶときでなくても、上位十二桁目の数字が０であれば、その入力を省いてよく、加えて上位に向かってみて０が連続して並ぶときには、小数部分に存在する限り、それらの入力をすべて省いてよい。しかし、以上に述べたことは、正規化する前に切り上げる場合であって、正規化した後で切り上げる場合には、表示された数値の全桁を整数とみなした桁数が１２で９９９…９．９…９の数値を切り上げるときを別として、整数部分に存在するか否かを考える必要はなく、上述のケースの数字の入力をすべて省いてよい。【００９４】  切り上げた後の数値の上位十二桁目の数字のみでなく、上位に向かってみて多数の０が連続して並ぶ場合、例えば切り上げた後の数値が１２３４５６００．００００の場合、正規化後の仮数部に入る数は１．２３４５６であるが、その平方については切り上げる必要を有しない。この例のように、一旦、全桁を整数とみなした桁数が許容桁数を越えたため切り上げた結果を累乗したときにおいても、必ずしも切り上げる必要を有するとは限らず、そのときには切り上げない。【００９５】  切り上げる前の数値の全桁を整数とみなした桁数が許容桁数と等しい１２であり、かつ前記数値の各位に入る数字がすべて９であれば、上述した切り上げを行った結果は、最高位に入る数字が１で、他の位に入る数字はすべて０である自然数、つまり１０００…０となる。ただし、切り上げる前の数値において、整数部分の桁数が許容桁数と等しい１２であり、かつ前記数値の各位に入る数字がすべて９の場合、つまり前記数値が９９９９９９９９９９９９の場合、上述した切り上げを行えば整数部分の桁数が許容桁数を越える。その場合に請求項６に記載の電子計算機に設けた加算後移動キーを押すと、表示は不変のまま保持し、又はエラー表示をして計算を継続できなくする。ただし、上述したように整数部分が一桁の正の数の１０乗は１０１０より小さいから、本方法の計算の際にそのようになることはない。【００９６】  一般的な電子計算機で計算結果を表示するにあたって、もし整数部分が０の場合はその位から数えるとしたときの上位十二桁目が小数部分に存在し、かつその数字が０であれば、通常、その数字を表示せず、全桁を整数とみなして十一桁以下の数値を表示する。それに加えて上位に向かってみて０が連続して並ぶ、つまり下二桁以上で０が連続して並べば、小数部分に存在する限り、通常、それらをすべて表示しない。言い換えれば、一般的な電子計算機で小数の計算結果を表示する際には、通常、前記計算結果の右端にある数字は０でない。加えて、本方法を用いる際に累乗の計算をした結果として表示される計算結果の整数部分は常に０でないことに留意する。すると、切り上げる量を最小で切り上げるために、真の数値の全桁を整数とみなした桁数が許容桁数より大きい小数の場合で、切り上げる前の数値の全桁を整数とみなした桁数が許容桁数より１小さいときは、右端にある数字を一つ消去し、消去した数字を入力してから０に１を加えた和、すなわち１を入力する。もし上位十二桁目の数字のみでなく、上位に向かってみて複数の０が連続して並んでいれば、言い換えれば、切り上げる前の数値の全桁を整数とみなした桁数が許容桁数より２以上小さければ、消去した数字の入力の後に、省略された数字０より一つ少なく０を入力し、１を一つ入力する。例えば真の数値の全桁を整数とみなした桁数が許容桁数を越える小数の場合で表示された計算結果が１２３．４４４５６７のとき、［⇒］→［７］→［０］→［０］→［１］と入力する。その結果、１２３．４４４５６７００１と表示される。【００９７】  ただし、もし消去した数字のうちで整数部分に存在するものがあれば、適所に小数点を入力する。小数の計算結果を表示した際に右端にある数字が９の場合、前記計算結果の全桁を整数とみなした桁数が許容桁数より小さいときと、等しいときとで、切り上げた結果が異なるので注意する。例えば、前者の場合で表示された計算結果が９８７．６５４３２１０９のとき、切り上げた結果は９８７．６５４３２１１０でなく、９８７．６５４３２１０９１である。切り上げる前の数値が自然数であっても、例えば切り上げる前の数値が１２３４５６７８９であっても、１２３４５６７８９．０００を切り上げると考えて、１２３４５６７８９．００１を切り上げた結果とする。切り上げる前の数値の桁数が許容桁数１２と等しい自然数であれば、一の位に入る数字に１を足して切り上げるが、切り上げる前の数値が９９９９９９９９９９９９のときには、上述したとおりである。【００９８】  上述の１２３．４４４５６７を切り上げて上限を得る例において、もし切り上げる前の数値においての右端にある数字が入る位、つまり小数点以下第六位に入る数字に１を足して切り上げると、すなわち１２３．４４４５６８とすると、切り上げた後の数値が真の数値より大きいという条件は満たすが、それにより得られる数値と真の数値や下限との差の絶対値はそれぞれ大きくなり、後に指数を増加するときに真の数値や下限との差の絶対値がはやく大きくなるだけであって、デメリットはあってもメリットはない。なお、整数部分が０の場合は、その位から数えて十二桁の数を表示する、すなわち数字表示部をすべて使用して表示すると、通常、数値を表示する画面の左端まで表示するので、このケースか否かは見ればすぐにわかる。しかも、一桁あるいは二桁少ないとき、左端と最高位との間隔でわかったり、電子計算機を見る角度により数字表示部で表示中でない液晶部が見えてわかったりするので、一目見れば一桁あるいは二桁少ないとか、もしくは三桁以上少ないなどの区別はすぐにつく。【００９９】  以上に述べた切り上げの方法を用いると、８．８８の１０乗の上限、ひいては８８８の１０乗の上限を計算でき、請求項６に記載の電子計算機以外の、しかも一般的な電子計算機を含む電子計算機で計算して数式４の結果を得られる。請求項６に記載の電子計算機を用いると、これらの切り上げを自由自在に行い、容易に上限の計算ができる。切り上げる前の数値において、整数部分が０の場合にはその位から数えるとしたときの上位の桁数が許容桁数を越える小数の場合に加算後移動キーを押さずに計算するときは、一般的電子計算機と同様に切り捨てた数値を表示し、前記加算後移動キーを押して計算すると、上述の方法で得られる上限を表示する。そして、計算を継続して行うと、それを用いて計算を行う。【０１００】  以上に述べた切り上げの方法を踏まえて計算すると、８８８の１０乗の上限として数式４を得る際の具体的手順は、［８．８８］→［×］→［＝］→［＝］→［＝］→［＝］→［⇒］→［４］→［×］→［＝］→［⇒］→［⇒］→［７］→［０］（→［＜小数点移動キー＞］）である。［＜小数点移動キー＞］は、小数点移動キーを押して入力することを表記するとする。８．８８の１０乗における下限と上限の計算結果は、小数点移動前の時点でそれぞれ３０４８８０５０６８．６８と３０４８８０５０６８．７０となるが、この例のように小数点の位置が同じ、つまり整数部分の桁数が等しければ、正規化したときの指数部に入る数も等しい。【０１０１】  小数の累乗において、一旦、全桁を整数とみなした桁数が許容桁数を越えれば、そのときに指数とした数以上の数を指数とする累乗において、常に許容桁数を越える。ただし、段落番号「００９４」で述べたように、切り上げた結果によっては、必ずしも以後の累乗の計算の際に切り上げを要するとは限らない。ただし、その際の数式４にあたる不等式においても、不等号は「≦」でなく、「＜」とする。【０１０２】  上限を計算する際の切り上げる前の計算結果においての全桁を整数とみなした桁数が許容桁数と等しく、かつ前記計算結果の各位に入る数字がすべて９のときには、つまり正規化の前の計算結果の全桁を整数とみなした桁数が１２で、それらの位に入る数字がすべて９９９…９．９…９であって、切り上げて１０００…０（．０…０）となる際に整数部分の桁数が１増加するときには、越位数は切り上げた後の結果を正規化する際の越位数で考える必要があることに注意する。このときに請求項６に記載の電子計算機に設けた加算後移動キーを押すと、切り上げた後に正規化した結果として１と表示されるが、その際に表示する越位数は、切り上げた後の越位数であることに注意する。そして、このとき、上述したように、上限についてはその位で計算を終了する。【０１０３】  数式４における上限の仮数部に入る数３．０４８８０５０６８７０を１０乗すると、この計算方法により得る８８８の１０乗の１０乗の上限、すなわち１００乗の上限が得られる。ただし、８．８８の平方の際に切り上げを要しなかったが、３．０４８８０５０６８７０の平方の際には要することに注意する。このようにして、数式６を得ることができる。数式６により、８８８の１００乗が２９５桁であることと、上位九桁の数字を確定できる。１０乗の下限と上限を表わす数式である数式５においての上限における上位十一桁目の数字７は、切り上げた結果として６から７になったものの、不等号の下に等号がある「≦」でなく等号がない「＜」であることと、下限における上位十一桁目の数字も６であることに着目して、上位十一桁目の数字は６と確定できる。【０１０４】  次に、対数の計算結果などについて述べる。【０１０５】  真数とする数あるいは確定する数字の個数によっては、実は、下限の計算のみで十分である。そして、そのとき、上限の計算を省けられる。そして、手間や時間を大幅に軽減でき、ミスの防止にもなる。その条件などについて述べる。【０１０６】  許容桁数が１２の電子計算機において、１０００以下の自然数を真数とする常用対数であれば、いずれのケースも下限の計算のみでよい。１０００以下の自然数を真数とする常用対数であれば、自明のケースを除いて、本方法を用いて得られた下限の少なくとも上位十桁は、真の数値と一致することを本願の出願人が実際に計算して確認した。よって、下限のみを計算して、その結果の上位十桁を真の数値の上位十桁として確定してよい。自明のケースとは、１や１００などの１０の累乗数を真数とするケースで、そのときの常用対数は、１０００以下の自然数を真数とする条件もあって、一桁の自然数である。以上に述べたことは、許容桁数が１２の電子計算機において、１０００以下の自然数を真数とすれば、数式１２の例のようになることがないからであり、又、後述するように、この方法で得られる結果の誤差が極めて小さいこともその理由に挙げられる。【０１０７】  しかも、たとえ１００１以上の自然数を真数とするときであっても、かなり控えめにみて、Ｉ．９９％以上で上位十桁一致、ＩＩ．９９．９９９％以上で上位七桁一致、ＩＩＩ．９９．９９９９９％以上で上位五桁一致する。Ｉ〜ＩＩＩのそれぞれのケースのそれぞれの確率は、それぞれ一致しないために各条件を最悪のケースで計算したときの結果であって、かなり控えめにみたものである。よって、Ｉ〜ＩＩＩのそれぞれのケースのそれぞれの不一致の確率は、Ｉ．１％未満、ＩＩ．０．００１％未満、ＩＩＩ．０．００００１％未満より、それぞれかなり低く、それぞれの十分の一あるいは数十分の一ぐらいの可能性もある。Ｉ〜ＩＩＩのそれぞれのケースは、それぞれ１００１以上の任意の一つの自然数を真数とするときの確率である。上限も計算してはさみうちを行ったときには、たとえ数式１２の例のようになったとしても、以後、小数点以下第十位まで計算したときの誤差の上限は、真数とする自然数の桁数によらず大きくみても１０−８％未満である。下記の数式２６の実例は、５０８６２７６９０３０６を真数として小数点以下第十三位まで計算したときに得られる結果である。このケースでは、上位五桁の数字のみ確定できる。しかし、たとえ上位数桁しか確定できないケースであっても、数式１２などの数式を用いて説明した際に触れたように、入る数字が確定できない位のうちで最も上位の位より一つ下位の位から下位に向かって少なくとも小数点以下第十位まで、下限では９が、上限では０がそれぞれ連続して入るケースに限られる。数式２６の例では、小数点以下第五位から同第十一位まで七つの位でそれぞれ上述の関係が成り立つ。【０１０８】
【数２６】
2015197907.tif 000057
【０１０９】  このケースの上限では、その関係が途切れた直後の位である小数点以下第十二位に入る数字がたまたま０ということもあって、０が入る位が八つも連続して並ぶ。真の数値１１．７０６３９９９９９９９９６…では、同位に入る数字がたまたま９ということもあって、９が入る位が八つも連続して並ぶ。下限では９が、上限では０がそれぞれ連続して入るという関係が必ず成り立つ位のうちで最も上位の位より一つ上位の位であり、かつ入る数字が確定できない位のうちで最も上位の位である小数点以下第四位においては、下限で９が入ることも、上限で０が入ることもいずれもない。【０１１０】  真の数値１１．７０６３９９９９９９９９６…との差の絶対値が大きい方である上限でさえ、誤差率は９．３９６５６９３９７９３×１０−１２％未満である。ただし、この誤差率は、下限の位に９が入り、上限の対応する位には０が入るという関係が、小数点以下第五位から連続して成り立つ位のうちで最も下位の位より二つ下位の位である小数点以下第十三位まで計算したときのものである。もし数式２６の上限でなく、それより一つ上位の位までとったときの上限１１．７０６４０００００００１であれば、誤差率は１．７０８４６７１６３２６×１０−１１％未満である。【０１１１】  １０００以下の自然数を真数とする常用対数であれば、下限の計算のみで、少なくとも上位十桁を確定してよいと述べたが、上位四桁のみの確定でよいのであれば、１億以下の自然数のいずれを真数としても、下限と真の数値の上位四桁は一致するから、下限のみを計算して、その結果の上位四桁を真の数値の上位四桁として確定してよい。例えばｌｏｇ１０２において、下限の上位十二桁が真の数値と一致するが、下限と上限を計算してはさみうちを行うと、それより一桁少ない上位十一桁の数字しか確定できない。しかし、上位十桁目までは下限のみでよいが、上位十一桁目の数字が一致するか否かを知りたければ、はさみうちを行う。【０１１２】  許容桁数が１２の電子計算機で下限と上限を計算してはさみうちを行って確定したときにおいて、得られる常用対数の全桁数を整数とみなして最大の桁数は１４である。例えば５０７０００００００００や５０７００００００００を真数とするときなどである。許容桁数が１２の電子計算機で得られる常用対数においての下限と真の数値で一致する上位の桁数においては、最多で上位十八桁である。小数のときも含めて少なくとも１００００００００００１と１００００００００００．１の二つのケースがある。【０１１３】  一億以下の自然数を真数とするときは、本方法で下限のみを計算して、少なくとも上位四桁を確定してよいと述べたが、それは、全桁を整数とみなして１億を越えない数を真数とするときは、整数部分に存在する位を含めて少なくとも小数点以下第三位までは、本方法により得られる下限と真の数値の対応する位に入る数字がそれぞれ一致することを意味する。それより下位の位に入る数字を確定するときは、段落番号「００７３」などで述べた１以外で１−１０−６以上１＋１０−６以下の数を真数とするケースを除いて、上限の計算もしてはさみうちを行う。整数部分が０の小数を真数とし、常用対数が負のときには、上述したように、最初���１０乗の直前に行われる正規化の越位数との和である最終的に得られる結果が一致する。
【実施例】
【０１１４】  常用対数の計算を行う具体的手順について、実例を用いて説明する。ほとんどすべての正の数を真数として計算することができ、特に、１０００以下の自然数を真数とする常用対数で上位十桁のみの確定でよければ、それらのすべてについて用いることができる流れ作業的な手順である。又、１億以下の自然数を真数とする常用対数であれば、少なくとも上位四桁をとって確定としてよい。なお、１０の累乗数を真数とする自明のケースは除く。そのケースについては、段落番号「０１２５」で説明する。【０１１５】  まず、８８８を入力し、小数点移動キーを押して整数部分を一桁とする。すると、８．８８と表示される。次に、小数点を移動した際の越位数２をメモする。次に、そのメモの右隣りに小数点を記入する。勿論、はじめから小数点を移動した後の数である８．８８を入力して２と小数点をメモしてもよい。一桁の整数又は整数部分が一桁の小数を真数とするときには、０と小数点を記入する。【０１１６】  次いで、８．８８の１０乗の下限を計算する。すると、数式２の仮数部に入る数３０４８８０５０６８．６８が計算結果として表示される。次に、小数点移動キーを押して小数点を移動し、その際の越位数である９を、先ほどメモした「２．」の右隣りに記入する。つまり、この時点で「２．９」と記入されたことになる。請求項４に記載の電子計算機であれば、表示された越位数を記入すればよい。計算結果の整数部分が一桁であって小数点の移動がないときには、そのときの越位数である０を記入する。【０１１７】  次いで、３．０４８８０５０６８６８の１０乗の下限を計算し、その計算結果における越位数４を、メモに記入された「２．９」の右隣りに記入する。すると、「２．９４」となる。【０１１８】  以下、これを繰り返す。そして、例えば１０乗して小数点を移動することを繰り返して全部で八回行った時点では、メモには「２．９４８４１２９６」と記入されることになる。次に、メモの右隣りに「…」を記入し、メモの左側に少し空白をあけて「ｌｏｇ１０」と記入し、そして前記空白に「＝」を記入すると、上位十桁の常用対数が流れ作業的に得られる。このようにして、数式１５と同じ結果が極めて容易に得られる。【０１１９】  １０００以下の自然数を真数とする場合であっても、上位十一桁以上を確定するときであったり、１００１以上の自然数あるいは自然数以外の数を真数として小数点以下第四位及びそれより下位の位に入る数字を確定したりするときには、１以外で１−１０−６以上１＋１０−６以下の数を真数とするケースを除いて、上限も計算してはさみうちをして確定すればよい。ただし、１以外で１−１０−６以上１＋１０−６以下の数を真数とするケースでなく、小数点以下第八位ぐらいまでの確定をするときで、数式１２のようになるか否かについて、つまり上限の計算を省けられるか否かをほぼ確認できる方法がある。真数とする数を正規化して仮数部に入る数を底とし、その際の越位数の桁数を、確定する数字の桁数から引いた差を指数とする１０の累乗数を指数とする累乗の下限を計算すれば、ほとんどのケースでほぼ確認できる。ただし、前記越位数が０のときは、その桁数は０とする。【０１２０】  例えば、上位六桁の数字を���定する場合であって、前記越位数が０以外で桁数が１の数であれば、真数とする数を正規化して仮数部に入る数の１０５乗、つまり１０００００乗の下限を計算して、最後の１０乗、つまり五回目の１０乗の計算の直後の正規化前の結果が９９９…９．９…９■□□…□のような数にならなければ、上限の計算は省いてよいことがほぼ確認できる。■は、９でない一桁の数字であり、□は、９を含むいずれか一桁の数字である。整数部分９９９…９は一桁又は複数桁である。上限の計算を省けられるか否かの確認のために、最高位から連続して９が入る位に必要な最小限の個数は、確定する数字の桁数及び前記越位数の桁数による。繰り返すが、１以外で１−１０−６以上１＋１０−６以下もしくは１−１０−５以上１＋１０−５以下の数を真数とするケースで、上位五桁を得る際の計算は上述したとおりである。請求項６に記載の電子計算機で上限を計算したときには、上述した下限のときの計算と同様にして上限を計算して、１０００…０．０…０◆□□…□のような数にならなければ、下限の計算は省いてよいことがほぼ確認できる。◆は、０でない一桁の数字である。整数部分１０００…０は一桁又は複数桁である。【０１２１】  小数を真数とする場合も、１以外で１−１０−６以上１＋１０−６以下の数を真数とするケースを除いて、数式１２のようなケースでない限り、同様にして計算できる。ただし、整数部分が０のときは、整数部分が０以外の一桁の数とする際に小数点を右に移動して飛び越えた位の個数において、符号を負としたものをメモする。つまり、負の符号である「−」を記入し、その右隣りに、飛び越えた位の個数を記入する。例えば、小数点を右に移動して二つの位を飛び越えれば、「−２」と記入する。次に、その右隣りに「＋」と記入する。この時点で「−２＋」と記入されたことになる。以下、小数点の移動後の数の常用対数について上述と同様にして計算した結果を「−２＋」のメモの右隣りに記入し、最後に一つの負の数と一つの正の数の足し算を行えばよい。【０１２２】  １以外で１−１０−６以上１＋１０−６以下の小数を真数とするケースを説明する。
繰り返すが、はさみうちは不要である。このケースのうちで１より大きい数を真数とするとき、最高位から下位に向かってみて０でない数字が入る位がはじめて現れる位から下位に向かって数えて五桁目まで計算した結果をメモする。そして、その右隣りに「…」を記入するのみでよい。一方、このケースのうちで１より小さい数を真数とするときには、まず、「−１」と記入する。次に、「−１」のメモの右隣りに「＋」を記入する。次に、真数とする数を正規化して仮数部に入る数を真数とする常用対数において、１より大きい数を真数とするときと同様に数えて五桁目まで計算した結果を「−１＋」と記入されたメモの右隣りに記入する。次に、それまで記入されたメモの右隣りに「…−」を記入する。次に、前記結果の全桁を整数とみなして一の位が入る位の本来の位に１が入り、他のすべての位には０が入る数値を記入する。そして、最後に三つの項の数式の計算を行えばよい。ただし、最後の項を記入せず、二つ目の項を記入する際に、それら二つの項の計算の結果と等しい数値を直に記入した方が早い。【０１２３】  許容桁数を越える自然数を真数とする場合は、近似値でなく確定するのであれば、上限の計算もしてはさみうちを行い、近似値の計算でよければ、次に述べるようにして行う。まず、真数とする数の桁数から許容桁数を引いた差をメモする。次に、その右隣りに「＋」と記入する。つまり、数式２３で計算した例では「３＋」と記入されることになる。次に、上位十三桁目で四捨五入するなどして得た結果の上位十二桁のみでなる十二桁の自然数を真数として常用対数の計算をし、その結果を「３＋」のメモの右隣りに記入する。そして、最後に二つの正の数の足し算を行えばよい。【０１２４】  この計算は、結果的に、数式２３の第四辺中の二項の順番を入れ替えたものである。全桁を整数とみなした桁数が許容桁数を越える小数を真数とする場合で、整数部分が０でないときは、整数部分の桁数から１を引いた差をメモし、真数とする数を正規化して仮数部に入る数の上位１２桁を真数として計算した常用対数の結果を、「３＋」のメモの右隣りに記入し、最後に二つの正の数の足し算を行えばよい。整数部分が０のときには、段落番号「０１２１」で述べた方法を併用する。【０１２５】  自明のケースであるが、１０の累乗数を真数とするケースは、０の個数又は指数をそれぞれメモするのみでよく、特に計算は要しない。例えば１０００や１０３を真数とするとき、「ｌｏｇ１０１０００＝」や「ｌｏｇ１０１０３＝」の右隣りに「３」とメモするのみでよい。
【産業上の利用可能性】
【０１２６】  ところで、数学の書物には常用対数を用いて、例えば１２の３２乗の桁数と最高位に入る数字を確定する問題がしばしば載っている。しかし、本発明を利用して上述の累乗の計算方法を用いれば、容易に計算できるどころか、最高位だけでなく上位の複数の位に入る数字を容易に確定できる。しかも、例えば１２３の３２０乗などのように遥かに桁数が大きいときでも容易である。３２０の素因数分解の結果により３２０は２６と５１の積であることに着目すると、１２３の３２０乗を行う手順の一例として、１．２３の平方を計算し、次いでその結果の平方を計算することを繰り返して全部で六回行い、その計算結果を５乗すればよい。常用対数を計算する際に１０乗したときと異なり、平方するたびに正規化する必要はない。しかし、この例では途中で少なくとも一回は正規化しないと、整数部分の桁数が許容桁数を越えるので、最後の５乗の計算の直前あるいはそれより前に正規化する必要がある。立方以上の累乗、つまり３以上の数を指数とする累乗を計算する際に整数部分の桁数が許容桁数を越えるために正規化を要する際、その累乗の計算の途中ではなく、その直前の累乗を終了した直後に正規化する必要がある。上述の手順で上限の計算をする際、三回目の平方の計算結果から切り上げる必要がある。【０１２７】  具体的な入力は、最後の５乗の計算の直前に正規化するとし、又、請求項６に記載の電子計算機を用いず、修正キーを用いて上限を計算するとして、それぞれ次のようになる。下限では［１．２３］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［＜小数点移動キー＞］→［×］→［＝］→［＝］→［＝］→［＝］、上限では［１．２３］→［×］→［＝］→［×］→［＝］→［×］→［＝］→［⇒］→［３］→［×］→［＝］→［⇒］→［２］→［×］→［＝］→［⇒］→［９］→［×］→［＝］→［⇒］→［２］→［１］→［＜小数点移動キー＞］→［×］→［＝］→［⇒］→［３］→［＝］→［⇒］→［８］→［＝］→［⇒］→［９］→［＝］→［⇒］→［⇒］→［９］→［０］とそれぞれ入力して下記の数式２７を得られる。そして、それぞれ正規化すると、下記の数式２８となる。ただし、請求項７に記載の電子計算機を除いて、指数の計算に注意しなければならない。【０１２８】
【数２７】
2015197907.tif 000058
【０１２９】
【数２８】
2015197907.tif 000059
【０１３０】  ５乗を行う順番はこの順番でなくてもよいが、これと異なる順番で行うと、下限や上限の仮数部に入る数が若干異なるが、１２３３２０の桁数や、確定する数字の桁数が異なる結果にはならない。この程度の桁数で結果が異なることはまずない。たとえもしあったとしても、数式１２のようなケースに限られる。以上に述べたようにして、１２３３２０が６６９桁という結果が得られ、しかも、上位の位、それも最高位どころか上位九桁の数字が下記の数式２９のように容易に得られる。なお、数式２９の右辺中の仮数部に入る数の小数点以下第六百六十八位に入る数字、すなわち１２３３２０の一の位に入る数字は、上述の計算とは異なる計算により算出されたもので、上述の計算とは無関係であり、又、結果に影響を与えるものではない。数式８のときも同様である。【０１３１】
【数２９】
2015197907.tif 000060
【０１３２】  数式２１の下限や上限を得る際に数式１９の右辺の割り算の計算を一般的な電子計算機で計算する方法を述べたが、それと異なり、二つの異なる数の掛け算においては、掛ける数や掛けられる数に下限や上限があるとき、下限の計算においては各々の下限を掛けた積を切り上げないでそのままで下限とする一方で、上限の計算においては各々の上限を掛けた積を必要に応じて切り上げて上限とする。三つ以上の積の掛け算であれば、これらをそれぞれ繰り返せばよい。すると、累乗以外にも桁数が大きな因数を多数乗じたりするときの積の桁数や上位の複数の位に入る数字を確定したり、近似値を計算したりすることができる。【０１３３】  しかし、因数がすべて同じ数の掛け算である累乗のときと異なり、小数の掛け算の最終結果又は途中結果において、各々の因数の小数部分の位の個数を掛けた積と、最終結果又は途中結果の小数部分の位の個数が必ずしも等しいとは限らない。ただし、小数部分の位の個数については、小数部分に存在する最も下位の位に入る数字は０でないとして考えるとする。又、整数の因数を含むときは、その因数については、以下に述べる計算においては無関係である。又、０の因数が一つでもある自明のケースは除く。【０１３４】  各々の因数を各々素因数分解して各々の素因数のうちで２と５についての指数を各々計算し、それらを各々足した各々の合計のうちで大きくない方を、各々の因数の小数部分の位の個数を掛けた積から引いた差が、最終結果又は途中結果の小数部分の位の個数と必ず等しい。以上に述べたことを踏まえていえば、累乗の場合で、例えば１２３００を底とするとき、正規化した結果を１．２３として考えると、１．２３の小数部分の位の個数２に指数とする数を掛けた積と、１．２３の累乗の小数部分の位の個数が等しい一方で、１．２３００として考えると、小数点以下第五位及び同第四位の二つの位に着目するとわかるように、１．２３００の小数部分の位の個数４と指数とする数を掛けた積から、２と指数とする数を掛けた積を引いた差が、累乗の小数部分の位の個数と等しい。後者においての２と指数とする数を掛けた積は、各々の因数を各々素因数分解して各々の素因数のうちで２と５についての指数を各々計算し、それらの指数を各々足した各々の合計のうちで大きくない方の一例である。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項７
【補正方法】変更
【補正の内容】
【請求項７】
１０を基数とし、指数部に入る数を入力する指数キーを設け、仮数部に入る数の入力後に前記指数キーを押した後に前記指数部に入る数を入力し、演算キーで計算する際には仮数部に入る数を用いて計算を行う一方で、指数部の計算も行うことを特徴とする請求項１、請求項２、請求項４、請求項５又は請求項６に記載の電子計算機。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項８
【補正方法】変更
【補正の内容】
【請求項８】
四則計算用の演算キー以外に小数点を移動するキーと許容桁数を満たす最小の位までに切り上げるキーを設けた電子計算機であって、桁数の大きな数の桁数及び上位の一つ又は複数の位に入る数字並びに対数の計算を精密に計算することを特徴とする請求項１、請求項２、請求項４、請求項５、請求項６又は請求項７に記載の電子計算機。