Java - Como sacar los numeros perfectos

 
Vista:

Como sacar los numeros perfectos

Publicado por Julio (10 intervenciones) el 11/03/2020 14:14:10
Muy buen día! Tengo una pequeña duda, como logro sacar los números perfectos de un método que imprime números al azar? Gracias de antemano

El ejercicio podría ser así:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
public static Integer getRandomNumber(int min, int max) {
        return new Random().nextInt(max - min + 1) + min;
    }
 
    public static int[] getVectorRandom(int elementos, int min, int max) {
        int[] e = new int[elementos];
        for (int i = 0; i < e.length; i++) {
            e[i] = getRandomNumber(min, max);
        }
        return e;
    }
 
    public static int getPromedioVector(int[] vector) {
        int sum = 0;
        for (int i = 0; i < vector.length; i++) {
            sum += vector[i];
        }
        return sum / vector.length;
    }
 
    public static int getMaxValueIndex(int[] vector) {
        int index = 0;
        int max = vector[index];
 
        for (int i = 1; i < vector.length; i++) {
            if (max < vector[i]) {
                index = i;
                max = vector[i];
            }
        }
        return index;
    }
 
     public static int numerosperfectos(int[] vector) {
        int index = 0;
        int max = vector[index];
        int suma=0;
 
        for (int i = 1; i < vector.length; i++) {
            if (max < vector[i]) {
                index = i;
                max = vector[i];
 
                for (i = 1; i < vector.length; i++) {
            if (vector.length % i == 0) {
                suma = suma + i;
            }
        }
            }
        }
        return index;
    }
 
    public static void showVector(int[] vector) {
        for (int i = 0; i < vector.length; i++) {
            System.out.print(vector[i] + (i + 1 < vector.length ? ", " : "\n"));
        }
    }
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Introduzca el tamaño del vector: ");
        int n = Integer.parseInt(sc.nextLine());
        int[] vector = getVectorRandom(n, 1, 50);
 
        System.out.print("Los elementos del vector son: ");
        showVector(vector);
        System.out.print("Los elementos que son numeros perfectos dentro del vector son: ");
        numerosperfectos(vector);
        System.out.println("El vector tiene " + vector.length + " elementos"
        );
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder