问题标签 [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 投票
6 回答
17022 浏览

c - 如何编写处理大数的解决方案?

我正在做一些 Project Euler 问题,并且大多数时候,计算涉及超出 int、float、double 等的大量数字。

首先,我知道我应该寻找更有效的计算方法,以避免出现大数问题。我听说过 Bignum 库。

但是,出于学术兴趣,我想知道如何编写自己的解决方案来解决这个问题。

有哪位高手可以帮帮我吗?(我的语言是C)

0 投票
4 回答
930 浏览

python - Python:怎么这么快?

模块中使用的 Mersenne Twister 的周期random是(我被告知)2**19937 - 1。作为二进制数,即连续 19937 个 '1(如果我没记错的话)。Python 非常快地将其转换为十进制:

我猜第二个版本是需要转换的版本?

它不仅仅是二进制的。这也很快。(而不是显示数字,我显示转换为字符串的小数长度):

定时:

问题是:这实际上是如何完成的?

我只是天真地被打动了吗?我发现 Python shell 在瞬间生成大约 5000 个位置的景象真的很壮观。

编辑:

@dalke 和 @truppo 建议的其他时间

因此,在我看来,这result = 0; result += 2**19937可能确实会强制转换。

0 投票
5 回答
1001 浏览

java - 操纵二的大幂的有效方法

编码 2 的幂的最有效方法是对整数进行位移。

1 << n给我2^n

但是,如果我有一个大于 aint或 a中允许的最大值的数字long,我可以使用什么来有效地操纵 2 的幂?

(我需要能够对数字进行加法、乘法、除法和模运算)

0 投票
5 回答
20983 浏览

c++ - 用于划分非常大的数字的算法

我需要编写一个算法(我不能使用任何 3rd 方库,因为这是一个分配)来划分(整数除法,浮动部分并不重要)非常大的数字,比如 100 - 1000 位。我找到了http://en.wikipedia.org/wiki/Fourier_division算法,但我不知道这是否是正确的方法。你有什么建议吗?

0 投票
3 回答
6656 浏览

loops - Fortran 中的长整数

我正在尝试处理大数(~10^14),我需要能够存储它们并迭代该长度的循环,即

我已经尝试过通常的星号kind=8等,但似乎没有任何效果。然后我检查了huge内在函数和代码:

在所有情况下都会产生数字 2147483647。为什么是这样?我在 64 位机器上使用 gfortran (f95)。

如果我需要一个 bignum 库,人们建议使用哪一个?

0 投票
3 回答
507 浏览

java - 优化非常大的数的算术运算

我想计算函数 H(n) 其中

C 是一个包含 n 个元素的数组

以下代码花费了太多时间......有更好的方法吗?

}

0 投票
3 回答
24277 浏览

c++ - 在 C++ 中使用哪种数据类型来处理非常大的数字?

我必须将号码存储600851475143在我的程序中。我尝试将它存储在long long int变量中,long double但在编译时显示错误

我也试过unsigned long long int了。我正在使用 MinGW 5.1.6 在 Windows 上运行 g++。

我应该使用什么数据类型来存储数字?

0 投票
2 回答
11296 浏览

php - PHP 中的超大整数

可能重复:
在 PHP 中处理大量数字。

我运行了一个完全没用的 Facebook 应用程序。我遇到了 PHP 对整数的支持的问题。基本上,用户会给自己一些荒谬的分数。当前的“王”有102,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,002,557,529,927点。

PHP 似乎不能很好地处理大整数。当有人尝试添加超过一定数量的点时,它将失败,因为 PHP 将这些数字视为无限。

是否有一些数学库可以处理非常大的数字?我应该将数字视为字符串并自己编写吗?

我们说的是长度为 2^20 位或更长的数字。它们不需要准确(任何错误通常都归咎于应用程序的低质量),也不需要高性能。我只需要允许更长数字的东西。

(对于那些好奇的人,我们将我们的数字存储在云中,因此存储成本不是一个大问题。)

0 投票
2 回答
88 浏览

.net - 在 x32 和 x64 平台上使用 .NET 时,我应该注意哪些常见的数学错误?

使用 .NET 执行计算时应该记住什么?

例如,我对浮点错误知之甚少,但对 CodeProject 上的这个论坛帖子不熟悉。为了完善基于 .NET 的数学知识,我需要知道什么,以便我可以建议如何使用不同位大小的参数和结果。

0 投票
1 回答
198 浏览

python - 在 Python 中格式化大整数

我正在处理我的脚本中的大整数,我想使用'K','M''B'后缀字符将数字格式化为字符串,分别表示数千、数百万或数十亿的规模。

而不是滚动我自己的函数,我想知道是否有一个内置函数可以“开箱即用”,或者至少在编写我自己的函数来执行这种类型的格式化时有用?