Программа Java неправильно определяет номер палиндромаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Программа Java неправильно определяет номер палиндрома

Сообщение Anonymous »

Я пытаюсь написать программу на Java, чтобы проверить, является ли данное число палиндромом или нет. Число-палиндром остается тем же, когда его цифры меняются местами (например, 121 или 1331).
Я написал следующий код, но для некоторых входных данных он не дает ожидаемого результата. Иногда он всегда печатает, что число не является палиндромом, даже если это действительно так.

Код: Выделить всё

import java.util.Scanner;

public class PalindromeNumber {

public static void main(String[] args) {

int num, rev = 0;

Scanner sc = new Scanner(System.in);

System.out.print("Enter a number: ");

num = sc.nextInt();

while (num != 0) {
int rem = num % 10;

rev = rev * 10 + rem;
num /= 10;
}

if (num == rev) {
System.out.println("Palindrome number");
} else {
System.out.println("Not a palindrome number");
}
}
}
Я думаю, что логика обращения числа верна, но я не уверен, почему сравнение не удалось.
Может ли кто-нибудь объяснить, что не так в моем коде и как это исправить?
Любые предложения по улучшению этой программы также приветствуются.>

Подробнее здесь: https://stackoverflow.com/questions/798 ... ome-number
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»