
先日、円周率を求める独自のアルゴリズムで、(仮称)十進BASICを使用して1000桁まで出すことに成功しました。
しかし、(仮称)十進BASICは1000桁が限界で、これ以上詳しい値を出すことが出来ませんでした。
なので、さらに詳しい値を算出できるプログラミング言語には何があるのでしょうか?
検索してみると、独自の計算のプログラムなどを組まなければいけないとか・・・
無限桁の桁数が扱えるプログラミング言語はないでしょうか?
また、計算用のプログラムを組むとなれば、どの言語がおすすめですか?
是非教えてください。
No.3ベストアンサー
- 回答日時:
無限桁はあり得ないので、「メモリの許す限りで最大桁数を指定出来る」という言語は色々あります。
例えばRubyで10000桁の計算をするとすると、こんな感じ。
require "bigdecimal" #任意長の実数計算ライブラリを指定
a = BigDecimal("1",10000) # a に有効数値桁10000桁の1を代入
b = BigDecimal("3") # b に 3 を代入
puts a/b # 0.333......3 (10000桁) を表示
プログラミングは出来ませんが、Linux等に普通入っている bc コマンドで小数点以下任意桁まで計算出来ます。
$ bc
scale=10000 #小数点以下10000桁まで扱う
1/3 # 0.333......3 (10000桁) を表示
No.4
- 回答日時:
No.2
- 回答日時:
まず、無限の桁を使うためには、無限のメモリが必要ですので、現在のところ「不可能」です。
既に回答のあるように、そういうものは、言語の仕様よりは、どんな手段でやるか、の方が重要です。
たとえば、1変数では1000桁でも、次の1000桁を別の変数に入れて、筆算のように繰上げ,繰下げを行えば、2000桁になります。
標準の実数型は通常十数ケタしか精度の無いC言語ですが、多倍長演算と呼ばれる類いのライブラリを使えば、もっと多くの桁を利用できます。
例: http://ja.wikipedia.org/wiki/GNU_Multi-Precision …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
”/”を使わずに割り算したいんで...
-
有効数字について 以前質問をし...
-
O(n log n)について2
-
double型からfloat型への型変換...
-
VB6のFIX関数での誤差について
-
ExcelでPC(パソコン)によって...
-
VBAのINT関数について
-
c languageで 簡単な質問があ...
-
VBAでミリ秒まで出力する方法
-
VBAでの割り算の余りの求め方
-
2038年問題 日付算出
-
C#にて電卓を作りたいのですが...
-
【C++】double の計算結果がお...
-
除算を使わずに10で割りたい。
-
2進数の足し算(C言語)
-
16進数とかわからないです
-
距離から緯度経度を求める方法
-
VB.net Double と...
-
「Aに対するBの割合」と「Aに対...
-
「指定されたキャストは有効で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
有効数字について 以前質問をし...
-
c languageで 簡単な質問があ...
-
ExcelでPC(パソコン)によって...
-
O(n log n)について2
-
2進数の足し算(C言語)
-
16進数 加算 減算 C言語
-
EXCELの関数"STDEV(標準偏差)"...
-
三菱シーケンサ(Aシリーズ)で...
-
VB.net Double と...
-
MATLABでの行列の全要素の和
-
除算を使わずに10で割りたい。
-
floatの有効桁数
-
”/”を使わずに割り算したいんで...
-
ExcelのINT関数の計算結果がお...
-
VBAでミリ秒まで出力する方法
-
VB6.0での小数点の扱いについて
-
Fortran において変数の定義
-
計算の丸め誤差の解消について
-
C言語について質問です。
-
CRCの計算方法について
おすすめ情報