Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Palindrome Integer: Create a Java application in NetBeans that has a main method

ID: 3685144 • Letter: P

Question

Palindrome Integer:

Create a Java application in NetBeans that has a main method that invokes two methods, reverse, and isPalindrome, to determine if a number is a palindrome (same as its reversal. E.g. 123454321). These two methods should have the following headers:

public static int reverse(int number) // return the reversal of an integer

public static boolean isPalindrome(int number) // return true if number is a palindrome

The program should ask the end user to enter an integer. Use the isPalidrome method to invoke the reverse method, and report whether the integer is a palindrome. Any one-digit integer or negative integer should be rejected with the specific error message (negative or one digit), and then the program should ask the user to re-enter the integer.

Hint: To reverse the digits of a number, try this routine:

int result = 0;                          

    while (number != 0) {                   // e.g. number = 123

                                            // Iteration 1        Iteration 2    Iteration 3

      int remainder = number % 10;          // remainder = 3      remainder = 2 remainder = 1

     result = result * 10 + remainder;     // result = 3         result = 32    result = 321

      number = number / 10;                 // number = 12        number = 1     number = 0

    }                                       // result contains the reverse of number  

Sample Java output:

Enter a positive multi-digit integer: 1

1 is one digit. Please enter a multi-digit positive integer:

-11      

-11 is negative. Please enter a positive multi-digit integer

12321

12321 is a palindrome

Enter a positive multi-digit integer: 1232

1232 is not a palindrome

Explanation / Answer

/* package codechef; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Codechef
{
public static int reverse(int number){ // return the reversal of an integer{
int result = 0;
while (number != 0) { // e.g. number = 123
// Iteration 1 Iteration 2 Iteration 3
int remainder = number % 10; // remainder = 3 remainder = 2 remainder = 1
result = result * 10 + remainder; // result = 3 result = 32 result = 321
number = number / 10; // number = 12 number = 1 number = 0
}
return result;// result contains the reverse of number
}
public static boolean isPalindrome(int number){ // return true if number is a palindrome{
if(number == reverse(number))
return true;
else
return false;
}
   public static void main (String[] args) throws java.lang.Exception
   { Scanner in = new Scanner(System.in);
   int number;  
   System.out.println("Enter a positive multi-digit integer: ");
   while(true){
       number = in.nextInt();
       if(number > 9)
       break;
       if (number < 0)
       System.out.printf("%d is negative. Please enter a positive multi-digit integer ",number );
       else
       System.out.printf("%d is one digit. Please enter a multi-digit positive integer: ",number );
   }
   if(isPalindrome(number))
   System.out.printf("%d is a palindrome",number);
   else
   System.out.printf("%d is not a palindrome",number);
}
}