gpt4 book ai didi

c++ - 为什么这个 Factorial 函数对大数返回零

转载 作者:太空宇宙 更新时间:2023-11-04 15:50:53 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Calculating factorial of large numbers in C

首先,我是 C++ 新手。我试过下面的程序来计算任何数字的阶乘。

#include <iostream>
using namespace std;
unsigned long factorial(unsigned long n){
return n <= 1 ? 1 : n * factorial(n-1);
}

int main()
{
cout << "Enter any Number to calculate factorial." <<endl;
unsigned long n;
cin >> n ;
cout << factorial(n) ;
}

如果我给出像 5、3、20 这样的小数字,它会返回准确的值。但如果我给出 34 等数字。它会返回零。我假设它超出了限制范围。无论我输入多少数字,请帮助我返回准确的结果。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com