public class Test1 {
public static void main(String[] args) {
//biginteger存储结果
BigInteger b1 = new BigInteger("1");
for(int i=1; i<=1000; i++){
BigInteger b2 = new BigInteger(i+"");
b1=b1.multiply(b2);
}
String s = b1.toString();
//全部零的个数
int count1=0;
for(int i=0; i<s.length(); i++){
if('0'==s.charAt(i)){
count1++;
}
}
System.out.println("零的总个数="+count1);
//尾部零的个数
StringBuilder sb = new StringBuilder(s); //字符串反转
s=sb.reverse().toString(); //链式编程
int count2=0;
for(int i=0; i<s.length(); i++){
if('0'!=s.charAt(i)){
break;
}else{
count2++;
}
}
System.out.println("尾部零的个数="+count2);
}
}
输出结果:
零的总个数=472
尾部零的个数=249
1000阶乘结果中零的个数,尾部零的个数
最新推荐文章于 2023-05-07 14:41:41 发布