理由是:由于只有2*5才可能出现末尾为0的情况,所以只需要考虑2和5的个数就可以了。但明显2的个数要大于5的,所以只需考虑5的个数
int Factorial(int N)
{
int nNum = 0;
while (N)
{
if (N%5 == 0)
{
nNum++;
}
N--;
}
return nNum;
}
本文介绍了一种计算阶乘结果中尾部0的数量的方法。通过分析得出,只需要关注因数5的出现次数即可确定尾0的数量。文章提供了一个简单的C函数实现。
理由是:由于只有2*5才可能出现末尾为0的情况,所以只需要考虑2和5的个数就可以了。但明显2的个数要大于5的,所以只需考虑5的个数
int Factorial(int N)
{
int nNum = 0;
while (N)
{
if (N%5 == 0)
{
nNum++;
}
N--;
}
return nNum;
}
被折叠的 条评论
为什么被折叠?