zoukankan      html  css  js  c++  java
  • 判断一个数是否是回文数

          若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数。

    但是要注意,回文数不是只有奇数位,偶数位也可以是回文数,例如 123321;小数没有回文数。  回文数通俗的看就是,顺着看和反着看数字是同样大小的。

    代码如下:

    import java.util.Scanner;
    /**
     * 判断一个数是否是回文数
     */
    public class palindromeNum {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入一个数:");
            int num = scanner.nextInt();
            System.out.println("是否回文:"+decide(num));
        }
    
        private static boolean decide(int num) {
            //将数字转换成char 数组
            char[] c = String.valueOf(num).toCharArray();
                //判断
                for (int i = 0, j = c.length - 1; i <= (c.length - 1) / 2; i++, j--) {
                    if (c[i] == c[j]) {
                        return true;
                    }else {   //其中一个不满足就不是回文数
                        return false;
                    }
                }
                return false;
        }
    }

           其中for中的条件   i <= (c.length - 1) / 2,而不应该为 i <= c.leng / 2;虽然这两种写法的结果相同,并且当输入的数的位数是奇数时二者效果相同,但是当输入的数的位数是偶数时,第二种写法会多于一次中间两数的判断。

  • 相关阅读:
    NYOJ题目916胖子小的百宝袋
    NYOJ题目893十字架
    NYOJ题目874签到
    设计模式之Singleton
    Elo rating system 模拟
    JDBC之SqlHelper
    《Thinking in Java》十四章类型信息_习题解
    NYOJ题目842整除的尾数
    NYOJ题目840吃花生
    NYOJ题目839合并
  • 原文地址:https://www.cnblogs.com/128-cdy/p/12288744.html
Copyright © 2011-2022 走看看