簡體   English   中英

如何在C#中獲得1000個十進制數字?

[英]how can I get 1000 decimal digits in C#?

在C#中最多可以獲取1000個十進制數字嗎?

我的程序需要pi值至少1000個小數點。

好吧,您可以使用數組來模擬數字,例如,如果需要計算a(具有100000位數字)和b(具有99999位數字):

 a:     a[100000]     a[99999]      a[99998]   ... a[1]           a[0]
+b:                   b[9999]       b[99998]   ... b[1]           b[0]
----------------------------------------------------------------------------
                                     ...   a[1]+b[1]+Carry      a[0]+b[0]

是的,但不使用內置數據類型。 十進制是您可以做的最好的事情,只有28到29位有效數字。

您將需要一個任意的精度庫,或者您需要重新設計並確定是否確實需要1000個十進制數字。

如果您只想計算Pi的1000位數字,可以使用一些函數來計算Pi的n位數字。 那時,您可以簡單地將結果存儲在數組中

如果您仍在尋找其他答案的替代方法,請查看Bailey Borwein Plouffe公式來計算Pi的第n個數字。 您可以使用它來計算前1000位數字。

在此處輸入圖片說明

您需要使用縮寫精度算法。 我不確定本機C#庫,但是GMP表示它具有C#包裝器。

您也可以使用J#的BigDecimal。

這是一個類似的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM