я писал:Проект Эйлера # 4 Java - Нет выхода
class Problem4 {
public static void main(String[] args) {
int reversenum = 0;
for (int i=100; i<1000; i++) {
for (int j=100; j<1000; j++) {
int tempPro = i*j;
int temptempfun = tempPro;
while (tempPro != 0) {
reversenum *= 10;
reversenum += tempPro%10;
tempPro /= 10;
}
if (reversenum == temptempfun) {
System.out.println(reversenum);
}
}
}
}
}
Я не получаю никакого вывода, когда я запускаю это, и я не могу понять, что я делаю неправильно.
РЕДАКТИРОВАТЬ:
Фиксированный его путем перемещения декларации reversenum внутри внутренний цикл.
class Problem4 {
public static void main(String[] args) {
int largest = 0;
for (int i=100; i<1000; i++) {
for (int j=100; j<1000; j++) {
int tempPro = i*j;
int temptempfun = tempPro;
int reversenum = 0;
while (tempPro != 0) {
reversenum *= 10;
reversenum += tempPro%10;
tempPro /= 10;
}
if (reversenum == temptempfun) {
if (reversenum > largest) {
largest = reversenum;
}
}
}
}
System.out.println(largest);
}
}
Попробуйте положить другое, чтобы узнать, что это за цифры и подумать? – doctorlove
Постарайтесь сопоставить их заданное двузначное число, которое будет быстрее отлаживаться в любом случае, затем попробуйте 3 цифры. – doctorlove