Explore Courses
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Birla Institute of Management Technology Birla Institute of Management Technology Post Graduate Diploma in Management (BIMTECH)
  • 24 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Popular
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science & AI (Executive)
  • 12 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
University of MarylandIIIT BangalorePost Graduate Certificate in Data Science & AI (Executive)
  • 8-8.5 Months
upGradupGradData Science Bootcamp with AI
  • 6 months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
OP Jindal Global UniversityOP Jindal Global UniversityMaster of Design in User Experience Design
  • 12 Months
Popular
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Rushford, GenevaRushford Business SchoolDBA Doctorate in Technology (Computer Science)
  • 36 Months
IIIT BangaloreIIIT BangaloreCloud Computing and DevOps Program (Executive)
  • 8 Months
New
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Popular
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
Golden Gate University Golden Gate University Doctor of Business Administration in Digital Leadership
  • 36 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
Popular
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
Bestseller
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
IIIT BangaloreIIIT BangalorePost Graduate Certificate in Machine Learning & Deep Learning (Executive)
  • 8 Months
Bestseller
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in AI and Emerging Technologies (Blended Learning Program)
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
ESGCI, ParisESGCI, ParisDoctorate of Business Administration (DBA) from ESGCI, Paris
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration From Golden Gate University, San Francisco
  • 36 Months
Rushford Business SchoolRushford Business SchoolDoctor of Business Administration from Rushford Business School, Switzerland)
  • 36 Months
Edgewood CollegeEdgewood CollegeDoctorate of Business Administration from Edgewood College
  • 24 Months
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with Concentration in Generative AI
  • 36 Months
Golden Gate University Golden Gate University DBA in Digital Leadership from Golden Gate University, San Francisco
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Deakin Business School and Institute of Management Technology, GhaziabadDeakin Business School and IMT, GhaziabadMBA (Master of Business Administration)
  • 12 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science (Executive)
  • 12 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityO.P.Jindal Global University
  • 12 Months
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (AI/ML)
  • 36 Months
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDBA Specialisation in AI & ML
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
New
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGrad KnowledgeHutupGrad KnowledgeHutAzure Administrator Certification (AZ-104)
  • 24 Hours
KnowledgeHut upGradKnowledgeHut upGradAWS Cloud Practioner Essentials Certification
  • 1 Week
KnowledgeHut upGradKnowledgeHut upGradAzure Data Engineering Training (DP-203)
  • 1 Week
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
Loyola Institute of Business Administration (LIBA)Loyola Institute of Business Administration (LIBA)Executive PG Programme in Human Resource Management
  • 11 Months
Popular
Goa Institute of ManagementGoa Institute of ManagementExecutive PG Program in Healthcare Management
  • 11 Months
IMT GhaziabadIMT GhaziabadAdvanced General Management Program
  • 11 Months
Golden Gate UniversityGolden Gate UniversityProfessional Certificate in Global Business Management
  • 6-8 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
IU, GermanyIU, GermanyMaster of Business Administration (90 ECTS)
  • 18 Months
Bestseller
IU, GermanyIU, GermanyMaster in International Management (120 ECTS)
  • 24 Months
Popular
IU, GermanyIU, GermanyB.Sc. Computer Science (180 ECTS)
  • 36 Months
Clark UniversityClark UniversityMaster of Business Administration
  • 23 Months
New
Golden Gate UniversityGolden Gate UniversityMaster of Business Administration
  • 20 Months
Clark University, USClark University, USMS in Project Management
  • 20 Months
New
Edgewood CollegeEdgewood CollegeMaster of Business Administration
  • 23 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
KnowledgeHut upGradKnowledgeHut upGradBackend Development Bootcamp
  • Self-Paced
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 5 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
upGradupGradUI/UX Bootcamp
  • 3 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
upGradupGradDigital Marketing Accelerator Program
  • 05 Months

Perfect Number Program for Java

Updated on 25 November, 2022

5.93K+ views
13 min read

What is a Perfect Number?

A number is said to be perfect if it is equal to its proper divisors’ sum. Thus, the sum of all positive divisors is equivalent to a number itself for a perfect number. The sum of the divisors of any number, while not including the number itself, is called its aliquot sum.  Hence, each perfect number is equivalent to its aliquot sum.

A perfect number is that number equal to half of all its positive divisors’ sum, including itself. Euclid has termed a perfect number as a perfect, ideal, or complete number. The first few perfect numbers include 6, 28, 496, and 8128.

Example1: 6

Positive factors are; 1,2,3,6

Here, the sum of all the aspects excluding the number itself is equal to 6.

Example2: 28

Positive factors are; 1, 2,4,7,14,28

Another time the sum of all the issues, not including the number itself, comes out to be 28.

Now that you are clear with the meaning of a perfect number let us move headed for the next segment.

Check out our free technology courses to get an edge over the competition.

Perfect Number in Java:

Let us understand it with the help of a function’s example. The following is the function for a perfect number.

Function to Check if the input Number is Perfect Number or Not:

Source

Types of Solution: Perfect Number in Java

The two leading solutions for finding a perfect number in java are:

  • Simple Solution

It involves going through every number from 1 to n-1 while checking if it is a divisor. The sum of all divisors is maintained throughout the process. Once the sum of all divisors is equal to n, the solution then returns to true. The answer returns to false in an otherwise situation.

  • Efficient Solution

It involves going through every number until the square root of n is reached. Look for any number “i” that divides n.  The next step is to add both “i” and n/i to the sum. 

Learn Software Development Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs or Masters Programs to fast-track your career.

Implementation of the Efficient Solution:

Input:

Source

Output:

Source 

Approaches to Find a Perfect Number in Java

There are two main approaches to find a perfect number in java. These are:

  • Iterative Approach

Input:

Source

Output:

Source

An iterative approach, “while loop,” is used to find divisors of the number and then get the sum of the divisors. The steps for adopting an iterative approach are:

  • Sum = 0 and loop variable “i= 1”are initialized.
  • A “while loop” condition is iterated until “i&It;=number/2” is false.
  • The remainder of “number%i” is checked using the modulo operator. If the remainder is 0, then add it to the sum.
  • If the sum is equal to the number after all iterations, then it is a perfect number.
  • Recursive Approach

Input:

Source

Output:

Source

This approach reduces the code statements as it doesn’t use “while loop.” The steps for adopting the recursive approach are:

  • Static variable is initialized, i.e., sum = 0.
  • A function findPerfect () is created. This function takes two parameters, namely “number” and “div.”
  • A terminal condition for recursion is introduced. Check if “div&It;=number/2” is true. Check remainder of number%i using the modulo operator. If the remainder is 0, then add it to the sum. “div” is incremented. Then “findPerfect()” is called recursively.
  • If the returned output of “findPerfect()” equals the number, it is a perfect number.

Programs: Perfect Number in Java

1. Program: Perfect Number in Java Using For Loop

Input:

Source

Output:

Source

This program permits the developer to enter any number. It checks the validity of a perfect number using the “java for loop.” First of all, there is a declaration of three integer variables, i.e.,” i,” number, and sum=0. Thus, the statement asks the user to enter any positive integer assigned to the variable number.

In the following line, “for loop” is introduced. The condition inside the “for loop” (i< number) makes sure that “i” should never exceed the number. An “if condition” is used inside this “for loop.” This is done to check if the number is completely divisible by “i” or not. There are two situations:

  • 1st case in which the number is completely divisible by “i,” then it is added to the sum.
  • 2nd case in which the number is not divisible by “i,” then it will be incremented by one and then checked for the next value.

Working Principle of “for loop” in this program:

The user has entered six as the input number. The working principle of “for loop” can be understood in an iteration-wise manner. 

  • First Iteration:

Here number= 6, sum= 0, and “i”= 1. The condition inside the “for loop” (1<6) is true, and hence, the program will start executing the statements inside the “for loop.” Within this “for loop,” there is an “if-else” statement and the condition “if (6%1= = 0) is true. Thus, sum= sum+“i.” Thus sum= 0+1= 1. At the end, “i” will be incremented by 1.

  • Second Iteration:

In the second iteration, both the values of sum and “i” have changed as sum= one and “i”= 2. Now the condition inside the “for loop” (2<6) is true. Now, with in the “for loop”, the if condition if (6% 2= = 0) is true. Thus, the new sum will be incremented by “i.’ Hence, the sum= 1+2= 3. In the end, “i” is incremented by 1. 

  • Third Iteration:

In the third iteration, the values of sum= three and “i”= 3. The condition inside the “for loop” (3<6) is true. The if condition if (6% 2= = 0) is true within the “for loop.” Thus, the new sum will be incremented by “i.” Hence, the sum= 3+3= 6. In the end, “i” is incremented by 1.

  • Fourth and Fifth Iteration:

The if condition fails in both fourth and fifth iterations. This is as:

If (6 % 4 = =0) is false and If (6 % 5 = =0) is also false.

  • Sixth Iteration:

In the sixth iteration, the java compiler will end the “for loop” due to its failure. This is because the value of “i” becomes six, which means that the “for loop” fails as (6 < 6). 

At the next step, the “if condition” if (sum = = number), is checked. If this condition is true, then system.out.format( “\n% d is a Perfect Number” , Number) ; is executed. Otherwise, system.out.format( “\n% d is NOT a Perfect Number” , Number) ; is executed.

2. Program: Perfect Number in Java Using While Loop

Input:

Source

Output:

Source

This program also allows the programmer to enter any number. The number thus entered is validated to be a perfect number using “While Loop.” The program executes in the same manner, just like in the “for loop.” 

3. Program: Perfect Number in Java Using Functions

Input:

Source

Output:

Source

In this program, the value entered by the user is passed to the method that is created. It will use java “for loop” to check if the number is a perfect number or not.

A function is called as the previous function is declared as void. It is

PerfectNumber (Number) ;

Hence, when the compiler reaches to PerfectNumber (Number) line in the main() program, the compiler immediately jumps to the following function mentioned below

public static void PerfectNumber (int Number) {

4. Program: Perfect Number in Java Using OOPS

Input:

Source

Output:

Source

In this java program, the code is divided using object-oriented programming. A function is created to find the factors of the given number and to calculate the factors’ addition. After this, another function is declared to check if the first function return value is equal to the function parameter or not.

First of all, a class is created that is used to hold a method to find the sum of factors. An instance of the class thus created, and the methods are called.

PerfectNumber Class Analysis:

A function is created to find the factors of the given input number and then summing up all factors. 

Main Class Analysis:

An instance or object of the PerfectNumber class is created. It is 

PerfectNumber pn = new PerfectNumber () ;

In the next step, FindPerfectNumber(Number) method is called. It returns an integer value that is assigned to the sum. It is 

Sum = pn.FindPerfectNumber(Number) ;

In the end, the java “if-else” statement is used to check if the return value is equal to the specified number defined by the user or not.

There is an option to create one more method inside the PerfectNumber class. This method checks whether the sum is equal to the number or not. 

5. Program: To Find Perfect Number Between 1 to 1000

Input:

Source:

Output:

Source

In this program, the user can add the minimum and maximum values. This program will find the perfect number between the minimum and maximum values. 

In this program, different statements are used that ask for the minimum and maximum values. Once the minimum and maximum values are assigned to the variables, “for loop” is used. Iterations start between the minimum and maximum values. 

for (Number = Minimum; Number <= Maximum; Number++) {

Hence, the program checks for the perfect number.

6. Program to check perfect number in java using checkPerfectSquare()

Input:

Source

Output:

Source

In this program a user-defined method checkPerfectSqaure() is created. It takes a number as an input parameter and reverts to true if the number is a perfect square. Otherwise, it returns to false.

In this program, two of the Math class methods, i.e., sqrt() method and floor() method, are used. The Math.sqrt() method determines the square root of the input number. The floor() method determines the nearest integer of the square root value reverted by the sqrt() method.

Then, the difference obtained by subtracting these two is calculated. The next step is to check whether this difference is non-zero or zero. If the difference is zero, then the number is a perfect square. This is due to the reason that a perfect square number’s square root is the integer itself. 

Points to Remember: Perfect Number in Java

  • There are different methods to find a perfect number in Java.
  • It is still unknown if there is any odd perfect number.
  • All perfect numbers are also Granville numbers.
  • A semi-perfect number is any natural number equal to the sum of some or all of its proper divisors.   
  • The only square less perfect number is 6.
  • The only perfect number that is even and is of the form x raised to power three and adding 1 to it is 28.
  • The lone even perfect number that is the sum of the two positive integers’ cubes is 28.
  • The perfect numbers N’s divisor’s reciprocals must add to 2.
  • The digital root of every even perfect number other than 6 is 1.
  • The numeric count of a perfect number’s divisors is always even. This is because N can’t be a perfect square.
  • The even perfect numbers can’t be denoted as the difference between two positive triangular numbers that are not consecutive.
  • Amid increased conversations around crypto and Blockchain technology, if you wish to educate yourself professionally on the topic, then upGrad’s Executive Post Graduate Programme in Software Development – Specialisation in Blockchain under IIIT- Bangalore is the right choice for you!

RELATED PROGRAMS