我想在阶乘中找到尾随零的数量,但我的代码返回了垃圾值。
#include<iostream>
using namespace std;
int main()
{
long int n;
cin>>n;
int z=0;
while(n>0)
{
n=n/5;
n=z+n;
z=n;
}
return z;
}
答案 0 :(得分:3)
我理解您的代码如下:您的输入为n
,并且您想要计算有多少尾随零n!
。在这种情况下,您的while
循环必须采用以下方式:
while(n > 0)
{
n = n / 5;
z = z + n;
}
// After running the loop, directly output the result.
cout << "z: " << z;
这在1000的扩展中给了我249个尾随零! 和1151尾随零4617!
根据this page来说应该是正确的。