このページについて | ||||||||||||||||||||||||||
このページは、mura's home の AutoCAD掲示板 で、当方の発言(書込み)がある以下の掲示板の内容です。
タイトルおよび質問内容は上記より引用しています。 引用した質問内容は、バックカラーが となっています。 当方の発言は、バックカラーが となっています。 その他の著作権者の掲載許可を得ていない発言内容は削除(リンクを除く)しています。 また、当方では、削除部分の正当な著作権保持者を判断出来ませんので、 ご連絡を頂いても、復活させることは出来ません。ご了承下さい。
|
VBAで巨大整数演算を行うためのライブラリとサンプルプログラム
BigInt
を公開しましたのでどうぞ。
VBA標準のデータ形式よりもう少し有効桁数が必要な場合に、お役に立ちます。
#このライブラリを利用して計算させるのに整数である必要はありません
#VBA内部で扱うデータ形式が整数なのでこう呼んでいます
#通常、多倍長整数(演算)(または多倍長演算)といいます
AutoCAD VBA版
http://www.geocities.jp/kamegai2006/autocad/index.htm#BigInt
EXCEL
VBA版
http://www.geocities.jp/kamegai2006/html/soft.htm#BigInt
演算は、四則計算、階乗、
演算桁に多少制限がありますが、平方根、立方根、π(計算・リスト)、三角関数、
逆三角関数(Atn)、自然対数の底e(計算・リスト)、自然対数の底eのX乗(e^X)、
自然対数(Log
eX)、べき乗(A^X)など。
100桁程度の演算なら十分使えるのではと、、、
一応500桁までなら何とか出来ますが。。。
それ以上は演算速度が遅いので制限をかけている演算があります。
EXCEL
VBA版は、ワークシート用ユーザー関数も定義済なので、シート上で演算できます。
ただし一部の演算は、ワークシート上で容易に扱えるように50桁に制限しています。
引数は文字列(または数値)で、戻値は文字列です。
大量の繰返し計算用途には(再計算に時間がかかるので)むきません。
バージョンアップを重ねてそこそこのレベルになりましたので、
再度書き込みさせていただきます。
#1〜2時間程度あれば数十万桁までのπの計算も何とか出来ます
#コンパイルされたπ計算専用ソフトの足元にも及びませんが
#信頼性は別にして、
#数千〜数万桁程度までなら実用になる速度ではと思います
#遅くなりましたが、
#サーバーの復旧ご苦労様でした。
#大事無くて何よりです。