Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

(Perfect Numbers) An integer number is said to be a perfect number if its factor

ID: 3563945 • Letter: #

Question

(Perfect Numbers) An integer number is said to be a perfect number if its factors, including 1 (but not the number itself), sum to the number. For example, 6 is a perfect number, because 6 = 1 + 2 + 3. Write a method isPerfect that determines whether parameter number is a perfect number. Use this method in an application that displays all the perfect numbers between 1 and and integer entered by the user. Display the factors of each perfect number to confirm that the number is indeed perfect. Challenge the computing power of your computer by testing numbers much larger than 1000. Display the results.

Can you assist me with this.

Thank you,

Explanation / Answer

import java.util.Scanner;

class perfectNumber
{
   public static int findNumber(int number)
   {
           int sum = 0;

           for(int divisor=1; divisor < number; divisor++)
           {
               if ((number % divisor) ==0)
               {
                   sum = sum + divisor;
               }
           }

           if(sum == number)
               return number;
           else
               return -1;
   }

   public static void main(String args[])
   {
       Scanner input = new Scanner(System.in);
       System.out.println("Enter a number:");
       int upperNum = input.nextInt();

       for (int i = 1; i <= upperNum; i++)
       {
           if (findNumber(i) != -1)
               System.out.println(i + " is a perfect number");
       }

   }
}