问题标签 [bignum]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
8680 浏览

.net - 如何在 .NET 中表示一个非常大的整数?

.NET 是否带有能够表示极大整数(例如 100 阶乘)的类?如果没有,有什么好的第三方库可以做到这一点?

0 投票
5 回答
2415 浏览

language-agnostic - 大数类的最有效实现

当对整数数据类型(如 double 或 int64)不足的非常大的数字进行计算时,可能需要一个单独的类来处理如此大的数字。

有没有人愿意提供一个有效的算法来最好地做到这一点?

0 投票
3 回答
2549 浏览

visual-c++ - 用 gmp 添加浮点数会给出“正确”的结果,有点像

在下面的代码中,我使用mpf_add添加两个浮点值的字符串表示。我现在不明白的是为什么2.2 + 3.2 = 5.39999999999999999999999999999999999999。我会认为这gmp是足够聪明的给予5.4

我不理解 gmp 如何浮动?

(顺便说一句,当我第一次写这篇文章时,我不确定如何插入小数点,因此最后是加/减数字)

0 投票
8 回答
80043 浏览

php - 在 PHP 中处理大数

要像在对大数(100,000+)使用费马素性检验时所需的那样使用模幂运算,它需要一些非常大的计算。

当我将两个大数(例如:62574 和 62574)相乘时,PHP 似乎将结果转换为浮点数。获取它的模值会返回奇怪的值。

有没有办法让 PHP 正确执行这些计算?或者,是否有另一种方法可以找到适用于大数的模值?

0 投票
14 回答
103799 浏览

c++ - 如何在 C++ 中实现大 int

我想在 C++ 中实现一个大的 int 类作为编程练习——一个可以处理大于 long int 的数字的类。我知道已经有几个开源实现,但我想自己编写。我试图了解正确的方法是什么。

我了解一般策略是将数字作为字符串获取,然后将其分解为较小的数字(例如单个数字),并将它们放入数组中。此时,实现各种比较运算符应该相对简单。我主要关心的是如何实现加法和乘法。

我正在寻找一种通用的方法和建议,而不是实际的工作代码。

0 投票
9 回答
1191 浏览

bignum - 如何处理庞大的数字?

可能重复:
大数类的最有效实现

假设我需要计算 2^150000。显然,这个数字将超过 int、float 或 double 的大小。如何创建允许正常数学函数但超出基本数字类型的数据类型?

如果这是“取决于您使用哪种语言”的交易。我会说 C#。

0 投票
6 回答
9217 浏览

math - Lua 的标准(或最受支持的)大数(任意精度)库是什么?

我正在处理无法四舍五入的大量数字。使用 Lua 的标准数学库,似乎没有方便的方法来保持超出某些内部限制的精度。我还看到有几个库可以加载以处理大数字:

  1. http://oss.digirati.com.br/luabignum/
  2. http://www.tc.umn.edu/~ringx004/mapm-main.html
  3. http://lua-users.org/lists/lua-l/2002-02/msg00312.html(可能与#2相同)
  4. http://www.gammon.com.au/scripts/doc.php?general=lua_bc(但我找不到任何来源)

此外,如果建立了绑定,可以从 Lua 调用 C中的许多库。

您对这些库中的一个或多个有任何经验吗?

0 投票
6 回答
3464 浏览

python - long <-> str 二进制转换

是否有任何库可以将很长的数字转换为仅复制数据的字符串?

这些单线太慢了:

0 投票
4 回答
1447 浏览

perl - 如何在 Perl 中计算双阶乘?

鉴于 Wikipedia 对Double Factorial的讨论,任何人都可以建议我在哪里可以找到 Perl 的 bignum 版本,或者建议如何编写它?

0 投票
1 回答
484 浏览

java - 为什么 JRuby 不能识别 BigNums 而 Ruby 可以?

如果我输入这个大整数:

并用 ruby​​ 1.86 编译,它预期会报告:

而 JRuby(Netbeans 中的 1.1.4)令人惊讶地报告:

我认为 Java 有一个 BigInteger 类来对应 Ruby 中的 BigNum 类。如果是这样,我会期望 JRuby 和 ruby​​ 产生相同的输出。