首页 > 其他 > 详细

1000的阶乘,1.求出所有零的个数 2.求出尾部零的个数

时间:2020-07-15 00:32:17      阅读:49      评论:0      收藏:0      [点我收藏+]

package demo;

import java.math.BigInteger;

/*
* 求出1000阶乘所有零和尾部零的个数
*/
public class Demo2 {
public static void main(String[] args) {
test();
test2();
}
/*
* 求出1000的阶乘中尾部所有零的个数
*/
private static void test2() {
BigInteger b1 = new BigInteger("1");
for (int i = 1; i <= 1000; i++) {
BigInteger bi2 = new BigInteger(i + "");
b1 = b1.multiply(bi2); // 将b1和bi2相乘的结果赋值给b1
}
System.out.println(b1);
String str = b1.toString(); //获取到b1的字符串表现形式
StringBuilder sb = new StringBuilder(str);
str = sb.reverse().toString(); //链时编程
int count = 0;
for(int i = 0;i<str.length();i++) {
if(‘0‘!= str.charAt(i)) {
break;
}else {
count++;
}
}
System.out.println(count);
}
/*
* 1000的阶乘所有的0的个数
*/
private static void test() {
BigInteger b1 = new BigInteger("1");
for (int i = 1; i <= 1000; i++) {
BigInteger bi2 = new BigInteger(i + "");
b1 = b1.multiply(bi2); // 将b1和bi2相乘的结果赋值给b1
}
System.out.println(b1);
String str = b1.toString(); //获取到b1的字符串表现形式
int count = 0;
for(int i =0;i<str.length();i++) {
if(‘0‘==str.charAt(i)){
count++;
}
}
System.out.println(count);
}

}

1000的阶乘,1.求出所有零的个数 2.求出尾部零的个数

原文:https://www.cnblogs.com/wangffeng293/p/13301870.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!