为了账号安全,请及时绑定邮箱和手机立即绑定

算法错误 求助求助

package test1;

public class test2
{
    public static void main(String args[])
    {
        int mul = 1;
        int num = 999;
        int count = 0;
        for(int i=9;i>=1;i--)
        {
            for (int j=1;j<=i;j++)
            {
                mul=mul*10;
            }
            count=num/mul;
            if (count!=0)
            {
                System.out.println(mul+1);
                break;
            }        
        }
    }
}

这个代码提示有除0错误,求助!!!!

正在回答

2 回答

if (num >= 0  && num<=999999999){
     while(num != 0){
     count++;
     num/=10;    // num/=10的意思是将整数num末尾数去掉,可用于计算一个数字的位数。

     }

System.out.println("它是个"+ count+"位的数!");
} else{
System.out.println("输入有误!");
}

0 回复 有任何疑惑可以回复我~
#1

Markc 提问者

非常感谢!
2015-12-08 回复 有任何疑惑可以回复我~

int全部改为long

可以查一下int的取值范围

0 回复 有任何疑惑可以回复我~
#1

蓝蓝的海风吹

恩,int的长度不够,这个i等于6的时候超过了20亿。可以试试改long
2015-11-22 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165150    人
  • 解答问题       17581    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

算法错误 求助求助

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信