Start Coding Now
🔢 Number Programsintermediate1 methods

Perfect Number in Java

Check if a number is a perfect number (sum of proper divisors equals the number).

Last updated: 11 January 2026

Method 1: Looping to half

Sum all divisors.

public class PerfectNumber {
    public static void main(String[] args) {
        int number = 28;
        int sum = 0;
        
        for(int i = 1; i <= number/2; i++) {
            if(number % i == 0) {
                sum += i;
            }
        }
        
        if(sum == number) {
            System.out.println(number + " is a perfect number");
        } else {
            System.out.println(number + " is not a perfect number");
        }
    }
}
Output:
28 is a perfect number

Explanation

Divisors of 28: 1, 2, 4, 7, 14. Sum = 1+2+4+7+14 = 28.

Frequently Asked Questions

Try This Program

Copy this code and run it in our free online Java compiler.

Open Java Compiler