Publish Your Article Here

Program: Write a program to find perfect number or not.

A perfect number is a positive integer that is equal to the sum
of its proper positive divisors, that is, the sum of its positive
divisors excluding the number itself. Equivalently, a perfect number
is a number that is half the sum of all of its positive divisors.
The first perfect number is 6, because 1, 2 and 3 are its proper
positive divisors, and 1 + 2 + 3 = 6. Equivalently, the number 6
is equal to half the sum of all its positive divisors:
		( 1 + 2 + 3 + 6 ) / 2 = 6.

package com.java2novice.algos;

public class IsPerfectNumber {

	public boolean isPerfectNumber(int number){
		int temp = 0;
		for(int i=1;i<=number/2;i++){
			if(number%i == 0){
				temp += i;
		if(temp == number){
			System.out.println("It is a perfect number");
			return true;
		} else {
			System.out.println("It is not a perfect number");
			return false;
	public static void main(String a[]){
		IsPerfectNumber ipn = new IsPerfectNumber();
		System.out.println("Is perfect number: "+ipn.isPerfectNumber(28));

It is a perfect number
Is perfect number: true
<< Previous Program | Next Program >>
blog comments powered by Disqus

List Of All Interview Programs:

  1. Find out duplicate number between 1 to N numbers.
  2. Find out middle index where sum of both ends are equal.
  3. Write a singleton class.
  4. Write a program to create deadlock between two threads.
  5. Write a program to reverse a string using recursive algorithm.
  6. Write a program to reverse a number.
  7. Write a program to convert decimal number to binary format.
  8. Write a program to find perfect number or not.
  9. Write a program to implement ArrayList.
  10. Write a program to find maximum repeated words from a file.
  11. Wrie a program to find out duplicate characters in a string.
  12. Write a program to find top two maximum numbers in a array.
  13. Write a program to sort a map by value.
  14. Write a program to find common elements between two arrays.
  15. How to swap two numbers without using temporary variable?
  16. Write a program to print fibonacci series.
  17. Write a program to find sum of each digit in the given number using recursion.
  18. Write a program to check the given number is a prime number or not?
  19. Write a program to find the given number is Armstrong number or not?
  20. Write a program to convert binary to decimal number.
  21. Write a program to check the given number is binary number or not?
  22. Write a program for Bubble Sort in java.
  23. Write a program for Insertion Sort in java.
  24. Write a program to implement hashcode and equals.
  25. How to get distinct elements from an array by avoiding duplicate elements?
  26. Write a program to get distinct word list from the given file.
  27. Write a program to get a line with max word count from the given file.
  28. Write a program to convert string to number without using Integer.parseInt() method.
  29. Write a program to find two lines with max characters in descending order.
  30. Write a program to find the sum of the first 1000 prime numbers.
  31. Find longest substring without repeating characters.
  32. Write a program to remove duplicates from sorted array.
Knowledge Centre
What is fail-fast in java?
A fail-fast system is nothing but immediately report any failure that is likely to lead to failure. When a problem occurs, a fail-fast system fails immediately. In Java, we can find this behavior with iterators. Incase, you have called iterator on a collection object, and another thread tries to modify the collection object, then concurrent modification exception will be thrown. This is called fail-fast.

About Author

I'm Nataraja Gootooru, programmer by profession and passionate about technologies. All examples given here are as simple as possible to help beginners. The source code is compiled and tested in my dev environment.

If you come across any mistakes or bugs, please email me to [email protected] or you can comment on the page.

Most Visited Pages

Other Interesting Sites

Reference: Java™ Platform Standard Ed. 6 - API Specification | Java is registered trademark of Oracle.
Privacy Policy | Copyright © 2014 by Nataraja Gootooru. All Rights Reserved.