Java回文数程序(使用while和for循环)

什么是回文数?

回文数是指一个数字,当它被反转时,仍然是相同的数字。例如,131。当它的数字被反转时,它仍然是相同的数字。回文数在垂直轴上具有反射对称性。它指的是当字母被反转时,拼写相同的词。

Java中的回文数示例

121, 393, 34043, 111, 555, 48084

回文数示例

 LOL, MADAM

回文数算法

以下是Java中的回文数算法逻辑

  • 获取需要检查是否为回文数的输入数字。
  • 将数字复制到一个临时变量中并反转它。
  • 比较反转后的数字和原始数字。
  • 如果它们相同,则该数字是“回文数”。
  • 否则,该数字不是“回文数”。

如何检查输入的数字是否为回文数

以下是使用WHILE循环的Java回文程序。

package com.guru99;
 
public class PalindromeNum {
 
	public static void main(String[] args)
	{
 
		int lastDigit,sum=0,a;    
		int inputNumber=171; //It is the number  to be checked for palindrome 
 
		a=inputNumber; 
        
        // Code to reverse a number
		while(a>0)
		{   System.out.println("Input Number "+a);  
			lastDigit=a%10; //getting remainder  
			System.out.println("Last Digit "+lastDigit); 
			System.out.println("Digit "+lastDigit+ " was added to sum "+(sum*10)); 
			sum=(sum*10)+lastDigit;  
			a=a/10;
			
		}    
 
		// if given number equal to sum than number is palindrome otherwise not palindrome
		if(sum==inputNumber)    
			System.out.println("Number is palindrome ");    
		else    
			System.out.println("Number is not palindrome");    
 
	}
 
}

代码输出

Input Number 171
Last Digit 1
Digit 1 was added to sum 0
Input Number 17
Last Digit 7
Digit 7 was added to sum 10
Input Number 1
Last Digit 1
Digit 1 was added to sum 170
Number is palindrome

使用for循环检查回文数的程序

以下是使用for循环的Java回文程序

package com.guru99;
 
public class PalindromeNum {
 
	public static void main(String[] args)
	{
 
		int lastDigit,sum=0,a;    
		int inputNumber=185; //It is the number  to be checked for palindrome 
 
		a=inputNumber; 
        
        // Code to reverse a number
	for( ;a != 0; a /= 10 )
		{   System.out.println("Input Number "+a);  
			lastDigit=a%10; //getting remainder  
			System.out.println("Last Digit "+lastDigit); 
			System.out.println("Digit "+lastDigit+ " was added to sum "+(sum*10)); 
			sum=(sum*10)+lastDigit;  
			a=a/10;
			
		}    
 
		// if given number equal to sum than number is palindrome otherwise not palindrome
		if(sum==inputNumber)    
			System.out.println("Number is palindrome ");    
		else    
			System.out.println("Number is not palindrome");    
 
	}
 
}

代码输出

Input Number 185
Last Digit 5
Digit 5 was added to sum 0
Input Number 1
Last Digit 1
Digit 1 was added to sum 50
Number is not palindrome