因子N,其中N大于200

时间:2014-03-28 20:36:16

标签: c++

有没有办法计算N的阶乘,其中N> 200.在c ++中有类似Bigdata的东西。因为即使是长变量也无法存储这么大的数字。请告诉我任何处理这种情况的方法大数问题????

2 个答案:

答案 0 :(得分:1)

int或long类型对于你所谈论的值来说还不够大。

34! = 295232799039604140847618609643520000000

这几乎不适合128位。如果您的编译器支持128位数字类型,则可以使用它来计算最多34的阶乘。如果不是,或者如果您需要更大的数据,则需要使用某种bignum库。

查看bignum个库的此问题: Big numbers library in c++

答案 1 :(得分:1)

我为C ++实现了一个BigInteger。欢迎您使用它。

http://memmove.blogspot.com/2013/04/unlimited-unsigned-integer-in-c.html