一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。-多语言

目录

[C 语言实现](#C 语言实现)

[Python 实现](#Python 实现)

[Java 实现](#Java 实现)

[Js 实现](#Js 实现)


**题目:**一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

**程序分析:**学会分解出每一位数。

C 语言实现

objectivec 复制代码
#include <stdio.h>

int main() {
    int x;
    printf("请输入 5 位数字:");
    scanf("%d", &x);

    // 检查输入是否为 5 位数
    if (x < 10000 || x > 99999) {
        printf("输入的数字不是 5 位数\n");
        return 1; // 退出程序
    }

    // 分解出各位数字
    int ge = x % 10;            // 个位
    int shi = (x / 10) % 10;    // 十位
    int qian = (x / 1000) % 10;  // 千位
    int wan = (x / 10000) % 10;  // 万位

    // 判断是否为回文数
    if (ge == wan && shi == qian) {
        printf("这是回文数\n");
    } else {
        printf("这不是回文数\n");
    }

    return 0; // 正常结束程序
}
  1. 输入检查:程序首先检查输入的数字是否为 5 位数。如果不是,输出提示并退出。
  2. 分解数字:使用取余和整除运算符分解出万位、千位、十位和个位的数字。
  3. 回文判断:通过比较个位与万位、十位与千位来判断是否为回文数。
  4. 输出结果:根据判断结果输出相应的信息。

Python 实现

python 复制代码
def is_palindrome(num):
    # 将数字转换为字符串
    num_str = str(num)
    
    # 检查是否为 5 位数
    if len(num_str) != 5:
        return False
    
    # 判断回文数
    return num_str == num_str[::-1]

# 主程序
if __name__ == "__main__":
    x = int(input("请输入 5 位数字:"))
    
    if is_palindrome(x):
        print("这是回文数")
    else:
        print("这不是回文数")
  1. 函数定义is_palindrome(num) 函数用于判断给定的数字是否为回文数。
    • 首先将数字转换为字符串。
    • 检查字符串的长度是否为 5 位。
    • 使用切片 [::-1] 反转字符串并与原字符串进行比较。
  2. 主程序
    • 使用 input() 函数获取用户输入,并将其转换为整数。
    • 调用 is_palindrome() 函数判断输入的数字是否为回文数,并输出相应的结果。

Java 实现

java 复制代码
import java.util.Scanner;

public class PalindromeChecker {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入 5 位数字:");
        int x = scanner.nextInt();

        // 检查输入是否为 5 位数
        if (x < 10000 || x > 99999) {
            System.out.println("输入的数字不是 5 位数");
            return; // 退出程序
        }

        // 分解出各位数字
        int ge = x % 10;            // 个位
        int shi = (x / 10) % 10;    // 十位
        int qian = (x / 1000) % 10;  // 千位
        int wan = (x / 10000) % 10;  // 万位

        // 判断是否为回文数
        if (ge == wan && shi == qian) {
            System.out.println("这是回文数");
        } else {
            System.out.println("这不是回文数");
        }

        scanner.close(); // 关闭扫描器
    }
}
  1. 导入 Scanner 类:用于获取用户输入。
  2. 主类和主方法 :定义 PalindromeChecker 类和 main 方法。
  3. 用户输入 :使用 Scanner 获取用户输入的数字。
  4. 输入检查:检查输入的数字是否为 5 位数。如果不是,输出提示并退出。
  5. 分解数字:使用取余和整除运算符分解出万位、千位、十位和个位的数字。
  6. 回文判断:通过比较个位与万位、十位与千位来判断是否为回文数。
  7. 输出结果:根据判断结果输出相应的信息。
  8. 关闭扫描器 :在程序结束时关闭 Scanner 对象以释放资源。

Js 实现

javascript 复制代码
function isPalindrome(num) {
    // 将数字转换为字符串
    const numStr = num.toString();
    
    // 检查是否为 5 位数
    if (numStr.length !== 5) {
        return false;
    }
    
    // 判断回文数
    return numStr === numStr.split('').reverse().join('');
}

// 主程序
const input = prompt("请输入 5 位数字:");
const x = parseInt(input, 10);

if (isPalindrome(x)) {
    console.log("这是回文数");
} else {
    console.log("这不是回文数");
}
  1. 函数定义isPalindrome(num) 函数用于判断给定的数字是否为回文数。
    • 首先将数字转换为字符串。
    • 检查字符串的长度是否为 5 位。
    • 使用 split('') 将字符串分割成字符数组,reverse() 反转数组,join('') 将数组重新组合成字符串,并与原字符串进行比较。
  2. 主程序
    • 使用 prompt() 函数获取用户输入,并将其转换为整数。
    • 调用 isPalindrome() 函数判断输入的数字是否为回文数,并输出相应的结果。

注意:

  • 在浏览器中运行时,prompt() 会弹出一个输入框,用户可以在其中输入数字。
  • 在 Node.js 环境中,你可以使用 readline 模块来获取用户输入,或者直接在代码中指定一个数字进行测试。

以上实例输出结果为:

javascript 复制代码
请输入 5 位数字:12321
这是回文数

请输入 5 位数字:12345
这不是回文数
相关推荐
独立开阀者_FwtCoder4 分钟前
你用 Cursor 写公司的代码安全吗?
前端·javascript·github
peace..8 分钟前
温湿度变送器与电脑进行485通讯连接并显示在触摸屏中(mcgs)
经验分享·学习·其他
张人玉10 分钟前
C# 常量与变量
java·算法·c#
dme.12 分钟前
Javascript之DOM操作
开发语言·javascript·爬虫·python·ecmascript
摸鱼仙人~16 分钟前
React Ref 指南:原理、实现与实践
前端·javascript·react.js
teeeeeeemo17 分钟前
回调函数 vs Promise vs async/await区别
开发语言·前端·javascript·笔记
加油吧zkf22 分钟前
AI大模型如何重塑软件开发流程?——结合目标检测的深度实践与代码示例
开发语言·图像处理·人工智能·python·yolo
t_hj23 分钟前
python规划
python
Java技术小馆23 分钟前
GitDiagram如何让你的GitHub项目可视化
java·后端·面试
学不动CV了26 分钟前
数据结构---链表结构体、指针深入理解(三)
c语言·arm开发·数据结构·stm32·单片机·链表