A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

最近做了黑马的入学测试题,其中有一个是求1000!有多少个0.这里要调用大数据类型,然后将大数据类型转换成字符串进行输出。代码如下,有我自己的注释。大家可以看看
package javaC.com.itheima;
// 9、 求1000!的结果中包含多少个0?注:1000! = 1×2×3×4×5×...×999×1000
import java.math.BigInteger;//调用大数据类
public class Test9 {
public static void main(String []args){
   BigInteger res=new BigInteger("1");//创建一个大数据类 ,包含一个整型值res=1
   for(int i=1;i<=1000;i++){//做一个循环,获得1到1000的数
          String j=String.valueOf(i);//将数值类型i转换成字符串类型j
           BigInteger s=new BigInteger(j); //将字符串类型j包装到大数据类型s中
           res=res.multiply(s);//将1000!的值存到res中
   }
   String r=res.toString();//将大数据类型res转换成字符串类型,存到字符串r中
   int count=0;//定义计数器
   for(int i=0;i<r.length();i++){//做一个循环,获得r的位数
           if(r.charAt(i)=='0')//如果r中的该位数为0;
                   count++;  //则计数器加上一次
   }
   System.out.println("1000!的结果包含"+count+"个0");
}
}

评分

参与人数 2黑马币 +20 收起 理由
GXJ1236987450 + 10 淡定&lt;span id=&quot;transmark&quot;&gt;&
君嘘 + 10 神马都是浮云

查看全部评分

2 个回复

倒序浏览
不错
!~~学的挺认真的!~~~~
回复 使用道具 举报
还没有做到这里
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马