我的测试题答案:
- package com.itheima;
- import java.math.BigInteger;
- /**
- * 第9题:求1000!的结果中包含多少个0?注:1000! = 1×2×3×4×5×...×999×1000
- * 思路:
- * 1,创建BigInteger对象
- * 2,定义一个变量计数
- * 3,for循环计算1000!结果装入BigInteger对象中
- * 4,把BigInteger对象转为String类型
- * 5,for循环遍历String,若遇'0',则计数变量加1
- * 6,打印计数结果
- * @author
- */
- public class Test9 {
- public static void main(String[] args) {
- // 创建值为1的BigInteger对象factorial
- BigInteger factorial = new BigInteger("1");
- // 定义一个变量count计数
- int count = 0;
- // for循环计算1000!结果装入factorial中
- for (int i = 2; i <= 1000; i++) {
- factorial = factorial.multiply(new BigInteger(i + ""));
- }
- // 把factorial转为String类型
- String s = factorial.toString();
- // 遍历s,若遇'0',则count++计数
- for (int i = 0; i < s.length(); i++) {
- if (s.charAt(i) == '0')
- count++;
- }
- // 输出计数结果
- System.out.println("1000!的结果包含0的个数为:" + count);
- }
- }
复制代码 |