Creo que vi lo de numero perfecto, pero al día siguiente desaparecio en el ejercicio del numero primo que te hice
![Huh ???](https://aprenderaprogramar.com/foros/Smileys/default/huh.gif)
(el ejercicio no esta echo con el perfecto)
Bueno mira creo recordar que en esta línea que pusistes solo te permite numeros del 1 al 100 ponerlo en el vector si pones por ejemplo 355, no te lo dice bien.Entonces modifica esta línea: (fue error mio, no modifique el código,sorry)
if(cont <=2 && i == 100){
Bueno y ya una vez arreglado eso:
6 es un número perfecto porque sus divisores propios son 1, 2 y 3; y 6 = 1 + 2 + 3
Es decir practicaménte es LO MISMO.
28 = 1 + 2 + 4 + 7 + 14 (28, es un numero perfecto)
Entonces imagina, que tienes este array:
int[] A = {33,22,44,55,3}
- Tienes que recoger el ARRAY 1 a 1 con un for
-Tienes que hacer un for anidado, similar como el del numero primo
practicamente es lo mismo, incluso puedes modificar el código ya echo que te hice y añadirle un par de líneas mas con modificar un par de condiciones ya lo tienes