Chương trình số Palindrom trong Java Sử dụng vòng lặp while & for

Số Palindrom là gì?

A Số Palindrom là số khi đảo ngược vẫn giữ nguyên số đó. Ví dụ: 131. Khi đảo ngược các chữ số của nó, nó vẫn giữ nguyên số đó. Số Palindrome có sự đối xứng phản xạ ở trục tung. Nó dùng để chỉ từ có cùng cách viết khi các chữ cái của nó bị đảo ngược.

Ví dụ về số Palindrome trong Java

121, 393, 34043, 111, 555, 48084

Ví dụ về số Palindrome

 LOL, MADAM

Thuật toán số Palindrome

Dưới đây là logic thuật toán số Palindrome trong Java:

  • Lấy số đầu vào cần kiểm tra xem có phải là số không Palindrom
  • Sao chép số vào một biến tạm thời và đảo ngược nó.
  • So sánh số đảo ngược và số ban đầu.
  • Nếu chúng giống nhau thì số đó là “số palindrome”
  • Số khác không phải là "số palindrome"

Cách kiểm tra số đầu vào có phải là Palindrome hay không

Dưới đây là chương trình Palindrome trong Java với Trong khi lặp lại

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");    
 
	}
 
}

Đầu ra mã:

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

Chương trình kiểm tra Palindrome bằng vòng lặp for

Dưới đây là một Java chương trình Palindrome sử dụng vòng lặp for

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");    
 
	}
 
}

Đầu ra mã:

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