Java 中的回文程序

Java 面试很可能涉及这样一种情况,即候选人必须展示他们的逻辑和编程技能以及他们的经验,作为他们对候选人评估的一部分。面试中最常见的问题是“你能用 Java 写一个回文程序吗?这也是最具挑战性的问题之一。回文只不过是数字或字符串,在反转时保持不变,而非回文则相反。很明显,当字母颠倒时,它们会形成彼此的镜像。回文最初来自希腊语,是数字、单词或字符集,它们向前和向后拼写相同。回文的众多例子包括 686、1401042、95359、7007、马拉雅拉姆语、雷达、MAAM、雷达、水平仪等。将字母颠倒过来,很明显它们形成了彼此的镜像。使用 Java 中的余数和除法运算符,我们可以创建一个代码来检查特定数字是否为回文。
在本文中,我们将学习如何检查输入数字是回文还是不是回文的数字。在这里,我们将讨论什么是回文,什么是回文数,以及 Java 中的示例回文程序。理解 Java 的回文实现的第一步是理解回文的概念。

以下是什么是回文的快速概述。

什么是回文?
回文一词是指单词、短语、数字或其他字符序列,无论是向前阅读还是向后阅读,它们读起来都相同。如果要向前和向后阅读,则无论间距、大小写或标点符号如何,它都将具有相同的字母序列。在编程中,空字符串也可以被视为回文。因此,确实,每个单个字符串或一位数字都被视为回文。
示例 1:字符串

赛车
发动机
原则
示例 2:数字

14541
6783876
232
什么是回文编号?
回文编号,也称为数字回文或数字回文,是一个即使其编号中的数字颠倒也保持不变的数字。例如,45654 是一个回文数,当其数字反转时,其值相同。正如您可能已经猜到的那样,如果我们反转 1312,它就不是回文,因为反向数字与原始数字不同。

回文编号计划的步骤
输入用户的号码或手动初始化它。
创建一个临时变量并将数字存储在其中。
反转/反转数字。
将临时号码与反转号码进行检查。
如果两个数字相等,则打印它为回文
否则,它不是一个回文。
Java 中使用 FOR 循环的回文程序
下面是一个易于遵循的程序,它使用“For 循环”来查找回文。在 for 循环中,将迭代检查输入中的数字,直到输入值变为 0。在 FOR 循环中,数字 (num) 的模数被考虑在内,并且它被保存在一个变量中,该变量为循环的每次迭代调用。因此,我们能够获得与输入完全相反/相反的结果。最后,将反转的数字与原始数字进行比较,以确定它是否为回文。以下示例可让您检查输入是否为回文编号。reverseNum

算法
启动程序
接受用户输入或手动初始化它 (num)
创建一个新变量 () 并存储输入。initialNum
在 num 等于零之前,找到 num 的余数并将其存储在变量 () 中。reverseNum
确定 是否等于 .initialNumreverseNum
如果两者都相等,
打印它是一个回文
否则,它不是一个回文。
结束程序

代码片段

import java.util.*;
class Main 
{
  public static void main(String[] args) 
    {
        Scanner sc= new Scanner(System.in);
        System.out.print("Enter the number: ");
        int num= sc.nextInt();

        int reverseNum=0, initialNum, remainder=0; 
        initialNum = num;
        for(;num!=0;num/=10)
        {
            remainder= num % 10;
            reverseNum = (reverseNum * 10) + remainder;
        }

        if (initialNum == reverseNum)
        {
            System.out.println("Yes, the given number " + initialNum + " is a palindrome.");
        }

        else
        {
           System.out.println("No, the given number " + initialNum + " is not a palindrome.");
        }
    }
}

输出 1:

输入数字:45354

是的,给定的数字 45354 是一个回文。

输出 2:

输入数字:61214

不,给定的数字 61214 不是回文。

Java 中使用 while 循环的回文程序
在解释了代码背后的逻辑之后,现在让我们看看用 Java 编写回文程序的另一种可能方法,即使用 while 循环。在 while 循环中,将迭代检查输入中的数字,直到输入值变为 0。在 while 循环中,数字 (num) 的模数被考虑在内,并将其保存在每次循环迭代调用的变量中。最后,将反转的数字与原始数字进行比较,以确定它是否为回文。以下示例可让您检查输入是否为回文编号。reverseNum

算法

启动程序
接受用户输入或手动初始化它 (num)
创建一个新变量 () 并存储输入。initialNum
在 num 等于零之前,找到 num 的余数并将其存储在变量 () 中。reverseNum
确定 是否等于 .initialNumreverseNum
如果两者都相等,
打印它是一个回文
否则,它不是一个回文。
结束程序
代码片段

import java.util.*;
class Main 
{
    public static void main(String[] args) 
    {
        Scanner sc= new Scanner(System.in);
        System.out.print("Enter the number: ");
        int num= sc.nextInt();
        int reverseNum=0, initialNum, remainder; 
        initialNum = num;
        while(num!=0)
        {
            remainder= num % 10;
            reverseNum = (reverseNum * 10) + remainder;
            num = num / 10;
        }

        if (initialNum == reverseNum)
        {
            System.out.println("Yes, the given number " + initialNum + " is a palindrome.");
        }
        else
        {
           System.out.println("No, the given number " + initialNum + " is not a palindrome.");
        }
  }
}

输出 1:

输入号码:98989

是的,给定的数字 98989 是一个回文。

输出 2:

输入数字:3624251

不,给定的数字 3624251 不是回文。

结论
在了解了什么是回文以及如何用 Java 编写回文代码之后,我们已经到了本文的结尾。希望本教程中与您分享的所有信息都澄清了您可能有的任何疑问。你能做的最重要的事情就是尽可能多地练习,并将你所学到的东西付诸实践。如果该数字仅由一个字母组成或不包含任何字母,则称为回文编号。当一个数字的反面与其原始数字相同时,它被称为回文字符串。希望这能帮助你提高你的Java技能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值