问题标签 [biginteger]

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 投票
7 回答
3100 浏览

c# - 在 C# 中处理“大”整数

如何在 C# 中处理大整数?

我有一个函数可以得到除数的乘积:

调用函数是GetDivisorProduct(N, 1)

如果结果大于 4 位,我应该只获得最后 4 位。(例如,如果我输入 957,则仅修剪最后四个值后输出为 7493。实际结果为 876467493。)。

其他示例输入:如果我给出 10000,则输出为 0。

该类BigInteger已从 C# 库中删除!

我怎样才能得到最后四位数字?

0 投票
4 回答
1645 浏览

java - 为什么 JAVA 中的 BIGInteger 没有响应更高的权力?

当我尝试查找2 23,000BigInteger的数据类型的值时,我看不到该值。

但是,对于高达2 22,000的计算,我可以BigInteger毫无问题地显示该值。

有什么解决方案或理由吗?

0 投票
7 回答
269 浏览

c - 大 int 编译器实现?

我正在构建一个类似于 c 的编译器,但我希望它解析大于 2^32 的整数。怎么可能?大整数是如何在 python 和 ruby​​ 之类的语言中实现的..!!

0 投票
6 回答
4235 浏览

objective-c - 真正的大数字和Objective-C

我一直在玩弄一些Project Euler问题,自然会遇到很多需要处理大于long long类型数字的问题。我致力于使用 Cocoa 和 Objective-C(我需要在工作中保持敏锐)但找不到一种优雅的方式(阅读:库)来处理这些非常大的数字。

我很想使用 GMP,但听起来像在 Xcode 中使用它是一个完整的伤害世界。

有谁知道任何其他选择?

0 投票
3 回答
9009 浏览

c++ - Bigint(大比特)库

我正在寻找一个 c++ 类/库,它提供 1024 位和更大的整数和位操作,例如: - 位移, - 按位 OR/AND, - 定位第一个零位

速度至关重要,因此必须使用一些 SIMD 程序集来实现。

0 投票
5 回答
1362 浏览

math - 大整数的或乘法

两个 n 位数 A 和 B 的乘法可以理解为移位的总和:

其中 i1, i2, ... 是在 B 中设置为 1 的位数。

现在让我们用 OR 替换 PLUS 以获得我真正需要的新操作:

此操作与存在许多更快算法(例如 Schönhage-Strassen)的常规乘法非常相似。我在这里介绍了类似的操作算法吗?

数字的大小为 6000 位。

编辑: 出于某种原因,我没有发布评论的链接/按钮(知道为什么吗?),所以我将编辑我的问题。对于上面定义的操作,我确实搜索了比 O(n^2) 更快的算法。是的,我知道这不是普通的乘法。

0 投票
5 回答
2249 浏览

java - 使用 Java 的 BigInteger 可能素数

我想打印两个数字之间的所有素数。这是我的代码:

当它以 1 10 运行时,输出为:

为什么不停在7点?

0 投票
9 回答
5124 浏览

java - Java BigInteger,截断最后一位

相当简单,如果 BigInteger 数字是 543,我希望它切断最后一位数字,使其变为 54。

两种简单的方法可以做到这一点:

  1. 使用字符串,获取子字符串并使用新值创建新的大整数。
  2. 对数字 10 使用 BigIntegers 除法。 ( 543 / 10 = 54.3 => 54 )

问题是我当然会用大整数多次执行此操作。

我的猜测是,玩字符串会更慢,但我又没有太多使用 Biginteger,也不知道“除法”操作有多昂贵。

速度在这里很重要,最快的实现方法是什么(内存没问题只有速度)?

也欢迎其他解决方案。

0 投票
8 回答
10762 浏览

java - 为什么 Haskell 可以轻松处理非常大的数字?

为什么 Haskell 可以计算出这么大的数字,而其他语言,例如 Java,却不能(那么容易)?

0 投票
8 回答
33936 浏览

math - 任意精度算术说明

我正在尝试学习 C,但遇到了无法处理非常大的数字(即 100 位、1000 位等)的问题。我知道存在执行此操作的库,但我想尝试自己实现它。

我只是想知道是否有人已经或可以提供对任意精度算术的非常详细、简单的解释。