Я пытаюсь сделать случайное число палиндромом. Например, сгенерированное случайное число 1234 должно стать 12344321.
Итак, я написал этот код:
int num = (int)((Math.random()*100000)+1);
int palindrome = num;
System.out.println(num);
while (num > 0)
{
palindrome = palindrome*10+num%10;
num = num/10;
}
System.out.println("Palindrome: " + palindrome);
Иногда это срабатывает, и я получаю, например, номер 6540 и палиндром 65400456. Но почему-то в большинстве случаев я получаю, например, номер 94229 и палиндром 833057657. Или номер 82270 и палиндром -362927364.
Почему это происходит? Что не так с этим кодом и как его исправить?
Спасибо!