What is palindrome ?
- A palindrome is a word, number, phrase, or other sequence of characters which reads the same from backward or forward direction.
- Palindromic number is a number whose digits, with decimal representation are the same read backward.
- For example:
- 121, 12321 etc. are palindromic numbers.
- We will use iterative or non recursive algorithm to check given number is palindrome.
Examples of palindromic & non-palindromic numbers:
S. No. | Input number | Reverse(input number) | isPalindrome |
---|---|---|---|
1 | 1234 | 4321 | No |
2 | 12321 | 12321 | Yes |
3 | 4554 | 4554 | Yes |
4 | 569 | 965 | No |
Algorithm: check given input number is palindrome
- Read input number from console.
- Reverse given input number.
- Compare given number equals reversed number.
- If reverse number is equal to given number then number is palindrome.
- else, given number is not palindrome.
Program: check given integer is palindromic number using java
package org.learn; import java.util.Scanner; public class PalindromeNumber { public static void main(String[] args) { try (Scanner scanner = new Scanner(System.in)) { System.out.printf( "Enter input number : " ); int inputNumber = scanner.nextInt(); int reverseNumber = reverseNumber(inputNumber); if (inputNumber == reverseNumber) { System.out.printf( "Input number = %d is palindrome" ,inputNumber); } else { System.out.printf( "Input number = %d is not a palindrome" ,inputNumber); } } } private static int reverseNumber( int inputNumber) { int reverseNumber = 0 ; int digit = 0 ; while (inputNumber > 0 ) { // get last digit e.g. 123 % 10 = 3 digit = inputNumber % 10 ; // after every loop get the next number // which is at 10 place from current number. reverseNumber = reverseNumber * 10 + digit; inputNumber /= 10 ; } return reverseNumber; } } |
Ouput: check given integer is palindrome number using java
Enter input number : 1221 Input number = 1221 is palindrome Enter input number : 12345 Input number = 12345 is not a palindrome |