Forum Academy Marketplace Showcase Pricing Features

Palindrome in Java

public static void main(String[] args) {
    //Input
    Scanner sc = new Scanner (System.in);
    System.out.println("Input a number: ");
    int num = sc.nextInt();

    //Solve
    for (int i = num+1; i>num; i++)
    {
        int numCheck = 0;
        int r;
        int numAfter = i;
        while (true)
        {
            r = i%10;
            numCheck = numCheck*10+r;
            numAfter = (numAfter-r)/10;
            i = numAfter;
            if (numAfter==0)
            {
                break;
            }
        }
        if (numCheck==num)
        {
            System.out.println("Minumum palindrome number that greater than input number: "+i);
            break;
        }
    }

}
My program is not printing any palindrome numbers greater than the input number when using java.util.Scanner.
Could someone help me to fix it?
I got this reference for this issue from here.

I think this is the wrong community to ask for java advice :man_shrugging:

2 Likes
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        //Input
        Scanner sc = new Scanner(System.in);
        System.out.println("Input a number: ");
        int num = sc.nextInt();

        //Solve
        for (int i = num + 1; ; i++) {
            int numCheck = 0;
            int r;
            int numAfter = i;
            while (numAfter > 0) {
                r = numAfter % 10;
                numCheck = numCheck * 10 + r;
                numAfter = numAfter / 10;
            }
            if (numCheck == i) {
                System.out.println("Minimum palindrome number that is greater than input number: " + i);
                break;
            }
        }
    }
}
2 Likes