练习-Java双路分支之判断回文数

任务描述

本关任务:判断一个给定的 5 位整数是否是一个回文数。

回文数介绍

“回文”是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如“我为人人,人人为我”等。在数学中,也有具有这样特征的一类数字,称为回文数。

设 n 是一任意自然数,若将 n 的各位数字反向排列得到自然数 n1,如果 n1 与 n 相等,则称 n 为回文数。举例如下:

  • 若 n = 12421 ,则称 n 为回文数;

  • 但若 n = 12457,则 n 不是回文数。

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。

import java.util.Scanner;
/**
 * 任务:判断一个给定的 5 位数是否是一个回文数
 */
public class ApplicationTest {
    /**
     * 请在下面的 Begin - End 之间按照注释中给出的提示编写正确的代码
     */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        //声明 int 类型的变量 num ,用来获取控制台输入
        int num = scanner.nextInt();
        /********** Begin **********/
        //第一步:获取个位数的数值
        int i = num % 10;
        //第二步:获取十位数的数值
        int i1 = num / 10 % 10;
        //第三步:获取百位数的数值
        int i2 = num / 100 % 10;
        //第四步:获取千位数的数值
        int i3 = num / 1000 % 10;
        //第五步:获取万位数的数值
        int i4 = num / 10000 % 10;
        //第六步:将获取的个位数值乘以 10000
        int a = i * 10000;
        //第七步:将获取的十位数值乘以 1000
        int a1 = i1 * 1000;
        //第八步:将获取的百位数值乘以 100
        int a2 = i2 * 100;
        //第九步:将获取的千位数值乘以 10
        int a3 = i3 * 10;
        //第十步:将获取的万位数值乘以 1
        int a4 = i4;
        //第十一步:将第六、七、八、九、十步转换后的数值相加
        int a5 = a + a1 + a2 + a3 + a4;
        //第十二步:判断变量 num 是否等于第十一步的数值,如果等于,则在控制台输出“回文数”;反之,则输出“不是回文数”
        if (num == a5) {
            System.out.println("回文数");
        } else {
            System.out.println("不是回文数");
        }
         /********** End **********/
    }
}

Guess you like

Origin blog.csdn.net/qq_53149358/article/details/121173465