非常非常大的C#浮点数

我正在进行一些人口建模(为了好玩,主要是为了实现承载能力和后勤function的概念)。 该模型适用于多个行星(目前约有100,000个行星)。 当人口达到一个星球的承载能力时,居民开始分支到附近的行星,依此类推。

问题:10万多颗行星可以容纳很多人。 超过C# Decimal可以处理。 由于我正在使用这些数字做平均值和其他东西,我需要能够使用浮点(或者我只使用BigInt库)。

有谁知道我可以使用的BigFloatingPoint类(或其他)? 谷歌今天非常无益。 我可以编写一个可以运行得很好的类,但是如果存在这样的东西,我宁愿使用预先存在的东西。

使用megapeople的单位来获得更多的净空。

此外,如果我的算术是正确的,Decimal可以让你拥有100,000个行星,每个行星拥有100000000000000倍的地球总数。 你确定这还不够吗?

即使每个星球上有1000亿人,总数仍然只有1E16。 这完全在有符号的64位整数的限制范围内(2 ^ 63到9,223,372,036,854,775,807,差不多是1E19 …

在你接近极限之前,你可以在每个星球上拥有数百万人,拥有10万个行星……

至于分数和平均值等,当你进行任何这样的计算时,你不能转换成Float或double吗?

你真的需要28位精度吗? 你可以使用浮点进行一些计算吗?

(确切地说是双倍:±5.0e-324到±1.7e308)