【戻る⇒】
■BigNumberとは
BigNumberとは、メモリが許されるならどこまでも桁数を増やせる整数です。
少数を扱うには、上位の何桁かを整数とみなし、残りを少数部として計算します。
■BigNumberの表現
16ビット整数を使うと、1002以内の整数なら正確に加減算でき、
さらに10n進法であれば、データの入力や文字列への変換が楽なので、
ここでは100進法を用います。
正負の符号をsignで示し、正のときfalse、負のときtrueにします。
■BigNumberのデータ宣言
public class BigNumber
{
public Boolean sign;
public short[] number;
■プログラム例のダウンロード
プログラムは、C#で書いてあります。また動作確認は2008, 2010で行っています。
なお、C#特有の表現を使っていませんので、Javaへのコンバートも簡単だと思います。
(operator 定義はJavaにはありませんので、この部分は関数で代替してください)
テキストファイルですので、コピー&ペーストして
自分が使用している言語プロセッサに移動して下さい。
(長い桁数のπの計算も入っていますので参考にしてください)
【ダウンロードする⇒】
(2014/12/28にoperator定義を使って定義しなおしました
古いバージョンは以下の分数のプログラム内に残してありますので
以下を参照してください。
Big Numberによる分数【ダウンロードする⇒】
【新しい定義プログラム例⇒】
■マチンの公式の証明
πの計算ではマチンの公式を使っていますので、その証明を示します。
■Excel VBAによるプログラム例
「ExcelとVBAによる実用数値解析入門」の著者のくせに
なぜ,C#なんだとのお叱りを頂きました。
本音のところVBAはインタプリタなので遅いのが理由ですが,
私の本の読者からのご意見ですので
以下にダウンロードできるようにしました。
ただし,C#版に比べ10倍ほど遅いので,
πの計算例は100桁を標準にしてあります。
なお,75,2003互換モードで保存してありますので,
XPの方も実行できます。
【ダウンロードする⇒】
【C#によるプログラム例⇒】
【戻る⇒】
|
|
|
|