实验指导之——回文数例题

要求:编写Java应用程序。用户从键盘输入一个1~99999之间的数,程序将判断这个数是几位数,并判断是否是回文数。

回文数是指将该数字含有的数字逆序后得到的结果和原数相同。例如:12121、3223都是回文数。

package com.test;

import java.util.Scanner;

public class Test {
	public static void main(String[] args) {
		int number = 0, units, tens, hundreds, thosands, tenThouands;
		Scanner scanner = new Scanner(System.in);
		System.out.println("请输入一个1-99999的数字:");
		number = scanner.nextInt();
		if (number >= 1 && number <= 99999) {
			units = number % 10;// 个位
			tens = number / 10 % 10;// 十位
			hundreds = number / 100 % 10;// 百位
			thosands = number / 1000 % 10;// 千位
			tenThouands = number / 10000;// 万位
			if (tenThouands != 0) {
				System.out.println(number + "是5位数");
				if (tenThouands == units && thosands == tens) {
					System.out.println(number + "是回文数");
				} else {
					System.out.println(number + "不是回文数");
				}
			} else if (thosands != 0) {
				System.out.println(number + "是4位数");
				if (units == hundreds && tens == thosands) {
					System.out.println(number + "是回文数");
				} else {
					System.out.println(number + "不是回文数");
				}
			} else if (hundreds != 0) {
				System.out.println(number + "是3位数");
				if (units == hundreds) {
					System.out.println(number + "是回文数");
				} else {
					System.out.println(number + "不是回文数");
				}
			} else if (tens != 0) {
				System.out.println(number + "是2位数");
				if (tens == units) {
					System.out.println(number + "是回文数");
				} else {
					System.out.println(number + "不是回文数");
				}
			} else if (units != 0) {
				System.out.println("是1位数");
				System.out.println(number + "是回文数");
			}
		} else {
			System.out.println("输入的数不在1-99999之间。");
		}
	}
}

运行结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

原创文章 65 获赞 95 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_42635052/article/details/105078974