Answer to Question 11C-1

The idea is to sum the proper divisors of n. Here is a pre-simulation of that for n = 6.

   n   i  sum  i a proper divisor of n?
   6   1    1          yes
       2    3          yes
       3    6          yes
       4    6          no
       5    6          no

Here is a pre-simulation for n = 8.

   n   i  sum  i a proper divisor of n?
   8   1    1          yes
       2    3          yes
       3    3          no
       4    7          yes
       5    7          no
       6    7          no
       7    7          no

Here is a definition of isPerfect based on those pre-simulations.

  bool isPerfect(const int n)
  {
    int  sum = 1;
    int  i   = 1;
    while(i < n)
    {
      i++;
      if(n % i == 0)
      {
        sum = sum + i;
      }
    }
  }
  return (sum == n);