本帖最后由 Teemo_Mann 于 2014-4-16 19:01 编辑
求1000!的结果中包含多少个0?注:1000! = 1×2×3×4×5×...×999×1000,大家还有更好的思路吗?探讨一下,我用的是计算出5的个数来算的.
public class Test9 {
public static void main(String[] args){
int tmp = 0;
int flag = 0;
int num = 0;
//0的个数是2 * 5想乘的结果,只要判断有多少个5即可
for(int i = 5;i <= 1000;i ++){
flag = i % 5;
tmp = i;
//若这个数能被5整除,则继续除,算出由多少个5组成.
while(flag == 0){
num += 1;
tmp /= 5;
flag = tmp % 5;
}
}
System.out.println("1000!阶层0的个数:" + num);
}
}
|
|