问题标签 [exponentiation]

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

python - Python 通过对非常大的整数进行平方来实现 pow() 求幂

我正在尝试通过平方http://en.wikipedia.org/wiki/Exponentiation_by_squaring来滚动我自己的 pow() ,它使用幂运算一点一点地遍历二进制。如果这有助于您思考这个问题,那么这方面有一些问题:

Python 中用于浮点数的内置 pow() 和 math.pow() 之间的区别?

Python ** 和 % 大数字运算符的行为

自制 pow() C++

我正在自学 Python,所以这可能是我犯的一些简单错误。

输出正确的是 31,21,12,错误的是 5,2,8:

不知道这一切都在哪里发生了可悲的错误。

0 投票
2 回答
507 浏览

c++ - 通过平方进行模幂运算的溢出可能性

我正在寻找实施费马小定理进行质数测试。这是我写的代码:

注意:我取了a(<=n-1)as的值2

现在,数字 n 可以大到10^18。这意味着变量exp可以达到 附近的值10^18。这进一步意味着表达式(exp*exp)可以达到10^36导致溢出的高度。我该如何避免这种情况。

我对此进行了测试,它运行良好,直到10^9. 我正在使用C++

0 投票
0 回答
271 浏览

c# - .NET BigInteger 分数幂

绝对没有办法将 BigInteger 提高到双倍值?有这样的图书馆吗?获得相同结果的任何替代方法?有任何想法吗?

0 投票
2 回答
126 浏览

matlab - 矢量化幂

我有两个向量,X一个基数和N一个指数。我想获取每个in和in的所有值的矩阵。e = xnxXnN

例如,以下输入:

应该产生:

有没有办法在不循环的情况下得到这个(就像你可以通过使用逐行乘积来获得 x×n 的所有值一样)?

0 投票
3 回答
38086 浏览

integer - OCaml 中的整数取幂

OCaml 中是否有整数求幂函数?** 仅适用于花车。虽然它似乎大部分是准确的,但是否存在精度错误的可能性,例如 2. ** 3. = 8. 有时返回 false ?是否有用于整数幂运算的库函数?我可以自己编写,但会涉及到效率问题,如果还没有这样的功能,我会感到惊讶。

0 投票
1 回答
56 浏览

math - 双打和代码准确性:出了什么问题?

我在以下代码中遇到了双精度数及其总和的准确性问题:

其中输出的前五项是:

很明显,将“1.0^3.0”(基本上是“1.0”)与“2.0^53.0”相加等于“2.0^53.0”;y 值也有问题。

可能是我的条件语句有缺陷,或者我可能不得不使用不同的原始数据类型......谢谢。

0 投票
1 回答
482 浏览

algorithm - 通过循环移位求幂

SO 上的其他一些主题提到了 Brickell 等人的论文“<a href="http://www.ccrwest.org/gordon/fast.pdf" rel="nofollow">Fast Exponentiation with Precomputation”,其中,除了与二进制数字对应的幂的预计算的简单概念外,还有一个关于“循环移位求幂”的声明(据我所知)。不幸的是,论文的那部分是用一种非常笼统的形式表达的,所以我根本无法弄清楚他们是否在谈论一些明显变得复杂的东西,而不是 2**n,或者真的存在某种其他的求幂方法比乘法(平方)?

例如,假设我们有x = 5(这是00101二进制的)。怎么可能以y = 5 * 511001二进制)结束,只使用位移位,也许还有一些加法?当然,算法应该比乘法更有效——答案是“你可以通过一堆位移和加法来模拟每个乘法,因为y = (5 << 2) + (5 << 0)”不算数。好吧,如果稀疏数字很常见,它可以计算,但这不是常见的情况,并且确定确切的位数也很耗时,因此,除非数字非常稀疏,否则不值得尝试,越是这样每次平方后都需要进行新的评估。

0 投票
1 回答
1752 浏览

matlab - 如何对非方阵的每个元素求幂?

我有一个尺寸为 512 x 683 的矩阵,我希望通过将其分别提高到 0.8 和 1.2 来对其进行伽马变换。显然你不能将非方阵提升到幂,所以我想知道如何将矩阵的每个元素提升到 0.8 次方和 1.2 次方。

谢谢

0 投票
1 回答
413 浏览

c++ - 仅需要 k 位数字时的快速求幂 - 续

我需要帮助的地方...

我现在要做的是翻译这个解决方案,它计算一个数字的尾数到 C++:

从结果中查找前 n 位数字可以这样完成:

我的尝试(由数学和这段代码引发)失败了......:

如果那里的任何人都可以正确实施此解决方案,我需要您的帮助!!


编辑

我尝试的示例输出:


n: 2

米:0

n^m: 1

计算尾数:1.16334


n: 2

米:1

n^m: 2

计算尾数:2.32667


n: 2

米:2

n^m: 4

计算尾数:4.65335


n: 2

米:98

n^m: 3.16913e+29

计算尾数:8.0022


n: 2

米:99

n^m: 6.33825e+29

计算尾数:2.16596

0 投票
1 回答
110 浏览

max - 如何执行可能超过 LONG_MAX 的数学函数

我如何执行(A div B)mod C,我在一个函数中计算 A,在另一个函数中计算 B,C 是说(10 pow 9 加 7)但 A 和 B 都可能大于 C,或 INT_MAX