问题标签 [largenumber]

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

c++ - 在 C++ 中处理大数?

在 C++ 中处理大型数字输入的最佳方法是什么(例如10^100)?

对于算法,我通常会切换到 ruby​​,有时我会使用字符串。

还有什么好的方法吗?

0 投票
13 回答
59886 浏览

c# - C#中的大整数

目前我正在从这里描述的 J# 库中借用java.math.BigInteger。以前从未使用过处理大整数的库,这似乎很慢,大约慢了 10 倍,即使对于ulong长度数字也是如此。有没有人有更好的(最好是免费的)库,或者这种性能水平是否正常?

0 投票
3 回答
4946 浏览

php - 如何在 PHP 中对 bcmath 数字进行舍入/天花板/地板?

是否有任何用于此目的的库函数,所以我不手动完成并冒着以 TDWTF 结尾的风险?

0 投票
4 回答
3325 浏览

c++ - C++中的无限循环

我正在学习 C++ 并编写一些小程序。以下是一个这样的程序:

当我运行这个程序并将输入保持在相当小的绝对值时,它的行为符合预期。但是当我输入更大的输入时,例如 10000000000,程序会重复输出相同的输出。某些输入组合会导致行为不稳定。例如:

该程序吐出“10 -->”直到它被杀死。(使用这个特定的输入序列,程序的输出速度会发生不规律的变化。)我还注意到,大值的输出取决于先前的合法输入以及当前非法输入的值。

这是怎么回事?(我不关心修复程序,这很容易。我想了解它。)

0 投票
14 回答
103799 浏览

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

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

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

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

0 投票
11 回答
67048 浏览

c# - 在 .NET 中处理令人难以置信的大量数字

我正在尝试解决projecteuler.net上的问题,但我一直遇到一些问题。

第一个是在 a 中存储大量元素的问题List<t>。在列表中存储大量数据时,我不断收到 OutOfMemoryException。

现在我承认我可能没有以最好的方式做这些事情,但是有没有办法定义应用程序可以消耗多少内存?

当我得到大约 100,000,000 个元素时,它通常会崩溃:S

其次,有些问题需要大量的数字相加。我使用 ulong 数据类型,我认为数字会变得非常大,但我仍然设法绕过最大支持的 int 并进入负数。

你对处理非常大的数字有什么建议吗?

0 投票
6 回答
5054 浏览

c++ - 如何在 C++ 中添加非常大的数字?

如何在 C++ 中添加非常大的数字?

0 投票
2 回答
3721 浏览

algorithm - 如何将 BCD 数字乘以(除以)10^x

我有一个大的(12 位)BCD 数字,编码为 6 个字节的数组 - 每个半字节都是一个 BCD 数字。我需要将它乘以 10^x,其中 x 可以是正数或负数。

我知道这可以通过半字节而不是位向左或向右移动来完成,但这是一个可怕的实现——尤其是在我正在使用的 Javacard 中。有没有更好的办法?

0 投票
6 回答
355308 浏览

python - 在 Python 中处理非常大的数字

我一直在考虑用 Python 进行快速扑克手评估。我突然想到,加快处理速度的一种方法是将所有牌面和花色表示为素数,然后将它们相乘以表示手牌。到白衣:

这将为每手牌提供一个数值,通过模数可以告诉我手中有多少国王或多少红心。例如,任何有五个或更多梅花的手牌都会被 2^5 平分;任何有四个 K 的手牌都会被 59^4 平分,以此类推。

问题是像 AcAdAhAsKdKhKs 这样的七张牌的散列值大约为 62.7 万亿,这将需要远远超过 32 位来表示内部。有没有办法在 Python 中存储如此大的数字,让我可以对其执行算术运算?

0 投票
4 回答
609 浏览

c# - 大数的类型

我正在开发一个需要处理大量数字的应用程序。

我检查了一些可用的 LargeNumber 类,并找到了一些我很满意的。我有一个用于大整数和大浮点数的类。

由于一些数字会很小,一些很大,问题是是否值得检查数字的长度,如果它很小,使用常规的 C# int 或 double,如果很大,使用我拥有的其他类,或者如果我我已经在使用 Large Integer 和 Large Float 类,即使是较小的数字,我也应该坚持使用它们。

我的考虑纯粹是性能。我是否会为较小的数字节省足够的数学时间,以便在输入后检查每个数字是值得的。