Код должен найти все идеальные числа в приделах тысячи и вывести свои собственные делители. При запуске кода: public class Main { public static void main(String[] args) { for(int num = 2;num <= 1000;num++) { if(perfect(num)) { System.out.println(num + " is perfect:"); System.out.print("Factors: "); for(int i = 1;i < num;i++) { if (num % i == 0) { System.out.print(i + " "); } } } } } public static Boolean perfect(int num) { int sum = 0; for(int i = 1;i<num;i++) { if (num % i == 0) { sum = sum + i; } } return sum == num; } } Получаем вот что: 6 is perfect: Factors: 1 2 3 28 is perfect: Factors: 1 2 4 7 14 496 is perfect: Factors: 1 2 4 8 16 31 62 124 248 А нужно: 6 is perfect: Factors: 1 2 3 28 is perfect: Factors: 1 2 4 7 14 496 is perfect: Factors: 1 2 4 8 16 31 62 124 248