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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ft352177 中级黑马   /  2016-5-23 00:59  /  684 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 ft352177 于 2016-5-23 01:09 编辑

需求:求出1000的阶乘所有零和尾部零的个数,不用递归做        
BigInteger s = new BigInteger("1");
                 for (int i = 1; i <= 1000; i++) {
                        BigInteger s1 = new BigInteger(i + "");
                        s =  s .multiply(s1);
                }
                 String str = s.toString();        
                 StringBuffer s1 = new StringBuffer(str);
                str = s1.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);
        }

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马