从键盘输入一串数字,判断是否回文数如果是一个回文数,打印true,否则,返回false。

package com.qf.demo0720pratique;

import java.util.Scanner;

/*
20. 回文数
要求:给你一个整数x。如果是一个回文数,打印true,否则,返回false。

 */
public class Demo20 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一串数字:");
        int num = scanner.nextInt();
        //定义一个变量接收输入的数
        int a = num;
        //定义一个空变量接收逆序输出的数
        int b = 0;
        //逆序输出
        while(num != 0){//判断输入的数是否为0为0结束循环
            int ge = num % 10 ;//取出个位数
            b = b * 10 +ge;//将取出来的数乘上十加上个位的数
            num = num /10;//将个位的数抹去继续计算剩下的数
        }
        //比较输入的数和输出的数是否相等
        if (a == b){
            System.out.println(a+"是回文数");
        }else {
            System.out.println(a + "不是回文数");
        }

    }
}

当我们从键盘上输入一个数字后,我们使用a来保存原始的输入数字。然后,我们使用一个变量b来逆转输入数字。

我们使用一个循环来逆转输入数字。在每次循环中,我们通过取余操作num% 10获取数字的最后一位,并将其添加到b中。然后,我们将输入数字除以10    ,num /= 10来去掉最后一位。重复这个过程,直到输入数字变为0。

举个例子来说明这个过程。假设我们输入的数字是12321。在第一次循环中,我们将数字的最后一位1添加到b中,此时b的值为1。然后,我们将输入数字除以10,得到1232。在第二次循环中,我们将数字的最后一位2添加到b中,此时b的值为12。然后,我们将输入数字除以10,得到123。在第三次循环中,我们将数字的最后一位3添加到b中,此时b的值为123。然后,我们将输入数字除以10,得到12。在第四次循环中,我们将数字的最后一位2添加到b中,此时b的值为1232。然后,我们将输入数字除以10,得到1。在最后一次循环中,我们将数字的最后一位1添加到b中,此时b的值为12321。最后,我们将输入数字除以10,得到0,退出循环。

最后,我们将逆转后的数字b与原始输入数字a进行比较。如果它们相等,则说明输入数字是回文数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值