黑马程序员技术交流社区
标题:
Java基础中的基础
[打印本页]
作者:
原子弹
时间:
2014-3-25 21:50
标题:
Java基础中的基础
!1000 1000的阶乘的末尾有多少个零! 不会做 求大神指教啊
作者:
zhuyunfei00000
时间:
2014-3-25 22:19
首先 结尾为零 且阶乘 因2*5=10 判断1000!里面数字有几对2 和5
/**
*
*/
/**
* @author Leslie
*
*/
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int num1=0; //被2整除
int num2=0; //被5整除
for(int i=1;i<=1000;i++){
int num=i;
while(num%2==0){ //判断被二整除的个数
num1++;
num/=2;
}
while(num%5==0){ //被五整除的个数
num2++;
num/=5;
}
}
System.out.println(Math.min(num1, num2));
}
}
作者:
无道
时间:
2014-3-25 22:21
我觉得这是一个规律题,,我刚刚算了一下,1-10的阶乘后面有两个零,到15就有三个,我只算到了15,后面就没有继续如果算不错的话到20应该有四个零,而这些零的出现与5有关。个人观点。不知道对不对。
作者:
tcny
时间:
2014-3-26 16:13
public class Test5 {
//计算能够被n整除的个数
static int getDiv(int n){
int temp = 0;
for(int i = 1; i <= 1000; i++){
if(i%n == 0){
temp++;
}
}
return temp;
}
public static void main(String[] args) {
int n = 5;
int num = 0;
//遍历5,25,125,625……不超过1000
for(int i = n; i <= 1000; i*=5){
num += getDiv(i);
}
System.out.println("!1000的末尾有"+num+"个零.");
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2