Ниже приведен мой код, который добавляет продукты всех трехзначных чисел в список массивов. Затем печатает те числа, которые являются палиндром. Я получаю 121 в качестве вывода. Почему не другое количество палиндрома?Почему программа ведет себя так?
import java.util.ArrayList;
public class eular {
int reverse=0;
public boolean palindrome(Integer num){
int remainder=0;
int n=num;
while(num!=0){
remainder = num % 10;
reverse = reverse * 10 + remainder;
num = num/10;
}
if(n==reverse)
return true;
else
{
return false;
}
}
public static void main(String args[]){
eular e=new eular();
ArrayList<Integer> a=new ArrayList<Integer>();
for(int i=100;i<=999;i++)
for(int j=100;j<=999;j++){
a.add(i*j);
}
for (Integer integer : a) {
if(e.palindrome(integer)){
System.out.println(integer);;
}
}
}
}
Потому что в вашем ArrayList только 121 является приятелем indrome и, следовательно, значение напечатано ... – CoderNeji
Вы пытались отладить свой код, чтобы узнать, что происходит? Я не downvoter – Jens
Но есть и другие, такие как 9009 и т. Д. Где другие номера? – Ketan