码迷,mamicode.com
首页 > 其他好文 > 详细

如何判断位数

时间:2019-01-27 14:34:38      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:rgs   实现   判断   次方   代码   sys   stat   错误   pre   

拿一道例题来说:

判断一个数(小于10位)的位数。(输入999,则输出 “它是个3位的数!”)

第一种:

通过寻找规律就能发现:如果一个数a为b位数,则a对10的b次方取余是a的本身

e.g: 22是两位数,22%(10*10)=22;

所以代码为:

 1 public class HelloWorld{
2 public static void main(String[] args){
3 int num = 999;
4 int count = 0;
5 int i=1;
6 do{
7     i=i*10;
8     count++;
9 }while(num%i!=num);
10 if(count>=10){
11 System.out.println("输入错误,请重新输入!");
12 }else{
13 System.out.println("它是个"+count+"位的数!");
14 }
15 }
16 }

运行结果:

它是个3位的数!

第二种:

一个数a每次除以10,位数就会自减一

e.g: 888是三位数,888/10=88;

  88是两位数,88/10=8;

  8是一位数,8/10=0;

所以代码实现为:

public class HelloWorld{
    public static void main(String[] args){
        int num = 999;
        int count=0;
        if(num>=0&&num<=999999999){
             while(num!=0){
                 num=num/10;
                 count++;
             }
        System.out.println("它是个"+count+"位的数!");
        }else{
             System.out.println("输入错误,请重新输入!");
     }
}

运行结果为:

它是个3位的数!

如何判断位数

标签:rgs   实现   判断   次方   代码   sys   stat   错误   pre   

原文地址:https://www.cnblogs.com/wangjiong/p/10326004.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!