问题标签 [factorial]
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.
algorithm - 您将如何编写非递归算法来计算阶乘?
你将如何编写一个非递归算法来计算n!
?
c++ - 当我计算一个大的阶乘时,为什么我得到一个负数?
所以,简单的程序,计算一个阶乘数。代码如下。
现在,对于大多数数字来说,这工作得很好而且很漂亮(当然有更快、更优雅的解决方案,但这对我有用)。但是,当输入更大的数字(例如 250)时,坦率地说,就是废话。现在,250 的前几个阶乘“位”是 { 250, 62250, 15126750, 15438000, 3813186000 } 以供参考。
我的代码吐出 { 250, 62250, 15126750, 15438000, -481781296 } 这显然是关闭的。我的第一个怀疑可能是我违反了 32 位整数的限制,但鉴于 2^32 是 4294967296,我不这么认为。我唯一能想到的可能是它违反了有符号的32 位限制,但它不应该能够考虑这种事情吗?如果被签名是问题,我可以通过使整数无符号来解决这个问题,但这只是一个临时解决方案,因为下一次迭代产生 938043756000 远高于 4294967296 限制。
那么,我的问题是签名限制吗?如果是这样,我能做些什么来计算大数(虽然我有一个“LargeInteger”类我前一段时间可能适合!)而不会再次遇到这个问题?
factorial - 阶乘是如何计算的?
说有一个函数来计算阶乘(n)
factorial(7) 是否为从 1 到 7 的 n 中的每一个创建 7 个函数对象
并在必要时使用这些值(对于阶乘(8),如阶乘(7)* 8)
awk - 无法在 AWK 中创建阶乘函数
编码
我通过以下方式运行命令失败
我明白了
错误信息是什么意思?
c - 无法让阶乘函数在 C 中工作
我无法让以下代码工作。
你怎样才能让代码工作?
c# - 在 C# 中处理非常大的整数
有谁知道我可以在 C# 中计算非常大的整数的方法
我正在尝试计算数字的阶乘,例如
5!= 5*4*3*2*1 = 120
对于小数字,这不是问题,但试图计算 unsigned int 的最大值的阶乘,即 4,294,967,295,这似乎是不可能的。
我已经查看了 BigInteger 类,但它似乎没有做我需要的
任何帮助将不胜感激
python - 无法在 Python 中创建阶乘函数
我的代码
我得到错误
如何在 Python 中创建阶乘函数?
integer - 无法为阶乘增加 AWK 的 int-limit
我运行AWK 代码,我得到了
这表明 AWK 没有使用与 Python 相同的 int IEEE-standard -module。看来AWK的限制是170!。
如何让 AWK 像 Python 一样理解大整数?
c# - C#:使用 Lambda 的递归函数
以下不编译:
局部变量“fac”在访问之前可能未初始化
你怎么能用 lambdas 做一个递归函数?
[更新]
这里还有两个我觉得有趣的链接:
language-agnostic - 在计算之前可以知道阶乘有多大吗?
我正在使用 GMP 来计算非常大的阶乘(例如 234234!)。有没有办法知道,在计算之前,结果将(或可能)有多少位数?