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