Java 程序反转数字并检查它是否为回文数
什么是回文数?
如果给定一个数字(两位、三位或四位数字),并将每个数字的位置从前到后反转,然后反之亦然,然后如果反转所有元素后输出的数字相同,则称其为回文数。
字符串- 字符串是一种存储胶囊或存储方法,我们可以在其中存储 Java 程序中的字符序列。
数组- 数组是按顺序放置在不同位置的相似类型数据的集合,这使得通过简单地添加调查中的基础数据来计算数据在程序上的位置变得更加容易。
让我们通过一个例子来理解这一点 -
给定输入:a = 102022220201 输出:a 的反转 = 102022220201 //数字是回文 = 是//
给定输入:b =20011997 输出:b 的反转 = 79911002 //数字是回文 = 否//
算法 - 反转数字及其回文
以下是反转数字并确定其是否为回文的通用算法 -
步骤 1 - 检查回文数。
步骤2 − 该数字应保存在非永久变量中。
步骤 3 − 更改数字。
步骤 4 − 现在检查将与反转数字一起保存在临时变量中的数字。
步骤 5− 如果两个数字保持相同或相同,则"它是回文数"。
步骤 6 − 要么/否则"它不是"。
语法:第 1 部分 - 反转数字
{ int a,res=0,m; Scanner sc=new Scanner(System.in); System.out.println("Enter a number which you want to be reversed"); } m=sc.nextInt(); for( ;m!=0; ) { a=m%10; res=(res*10)+a; m=m/10; }
Syntax: Part 2 – To Find The Palindrome Of A Number
if (originalNum1 == reversedNum1) { System.out.println(originalNum1 + " is a Palindrome number."); } else { System.out.println(originalNum1 + " is not a Palindrome number."); }
让我们看一下Java中的回文程序。这将是回文程序的最简单形式。
以下方法可用于检查回文数 -
通过使用字符串和数组检查数字是否为回文。
通过使用字符串在 Java 中找出回文数。
通过检查数组是否为回文。
通过使用字符串和数组检查数字是否为回文
检查数字是否为回文的步骤 -
将标志初始化为未设置或标志值为 0。
将数组大小设置为n/2。
检查循环的条件。然后将标志值设置为 1。
中断。
循环以结果结束。
示例
import java.util.*; public class palindromeTest{ public static void main(String args[]){ int n; System.out.println("Enter a number to test"); Scanner sc = new Scanner (System.in); n=sc.nextInt(); int r=0 ,q=0 ,num=0 ,p=0; num= n; while(n!=0){ r = r%10; q = n/10; p = p*10+r ; n = q; } if (num==p){ System.out.println("the number is a palindrome number"); } else{ System.out.print("the number is not palindrome"); } } }
输出
Enter a number to test 1111 the number is not palindrome
通过使用字符串在 Java 中查找回文数 -
如果将回文数反转,它将返回与输入相同的数字。使用带有单向 reverse() 的 StringBuffer 方法,我们可以使用 Java 检查回文数。在下面的例子中,我们将检查输入的字符串是否是回文。
示例
public class Main { public static void main(String[] args) { String str = "Radar2022", reverseStr2 = ""; int strLength1 = str.length(); for (int i = (strLength1 - 1); i >=0; --i) { reverseStr2 = reverseStr2 + str.charAt(i); } if (str.toLowerCase().equals(reverseStr2.toLowerCase())) { System.out.println(str + " -is a Palindrome String."); } else { System.out.println(str + " -is not a Palindrome String."); } } }
输出
Radar2022 -is not a Palindrome String.
通过检查数组是否为回文
有两个过程可以检查数组是否为回文。
如果字符串中只有一个字符,则返回 true。
否则,只需比较第一个和最后一个字符并将它们放入递归方法中。
示例
public class findapalindrome { static void palindrome(int arr[], int n){ int flag7 = 0; for (int i = 0; i <= n / 2 && n != 0; i++) { if (arr[i] != arr[n - i - 1]) { flag7 = 1; break; } } if (flag7 == 1) System.out.println("The String Is Not Palindrome"); else System.out.println("The String Is Palindrome"); } public static void main(String[] args){ int arr[] = { 100, 200, 300, 222, 1111 }; int n = arr.length; palindrome(arr, n); } }
输出
The String Is Not Palindrome
结论
在了解了定义和一些基于理论的程序之后,可以很容易地说,回文数是一种即使在改变原始数字后也不会改变的数字。
所有这些解释都通过示例进行了适当的描述,为了更好地理解,我们还提供了基于三种不同方法的示例程序。