qq_62227344 2021-10-22 11:49 采纳率: 100%
浏览 17
已结题

回文数 每个自然数占一行:XX是回文数 或者 XX不是回文数 或者 input error

题目描述
编写一个方法isPalindrome(),参数为一个5位以内的自然数,它判断该数是否为回文数,并根据判断结果返回布尔类型的值。
然后,在main方法中循环输入一个5位数以内的自然数,如果输入的自然数超过5位,则输出“input error”,否则,调用isPalindrome(),并根据方法的返回值输出“XXXXX是/不是回文数”,直到输入一个负数为止。
回文数是指正序(从左至右)和逆序(从右至左)都相同的数,如303、42124和3223。

输入描述
一行以负数结尾的自然数,中间用空格分开

输出描述
每个自然数占一行:XX是回文数 或者 XX不是回文数 或者 input error

输入样例
29 454 11 12321 0 234512 999 -1

输出样例
29不是回文数
454是回文数
11是回文数
12321是回文数
0是回文数
input error
999是回文数

  • 写回答

1条回答 默认 最新

  • 钰娘娘 2021-10-22 16:01
    关注
    
    public class Main {
        public static void main(String[] args) {
            Main main = new Main();
            Scanner sc = new Scanner(System.in);
            int v = 0;
            while((v  = sc.nextInt())>=0){
                if(v>=100000){
                    System.out.println("input error");
    //                29 454 11 12321 0 234512 999 -1
                }else{
                    System.out.println(main.isPalindrome(v)?v+"是回文数":v+"不是回文数");
                }
            }
    
        }
    
        private boolean isPalindrome(int num){
           int reverse = 0;
           int origin = num;
           while(num>0){
               reverse=reverse*10+num%10;
               num/=10;
           }
           return reverse==origin;
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 创建了问题 10月22日

悬赏问题

  • ¥15 shape_predictor_68_face_landmarks.dat
  • ¥15 slam rangenet++配置
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题