Se trata de programar un código que pida al usuario una lista de números enteros. De éstos números, los pares son almacenados y los impares descartados (pero se lleva la cuenta de los descartados). Una función llamada rellenaPares() realiza esta tarea.
public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n; System.out.print("¿Cuántas cifras quieres para almacenar? "); n = sc.nextInt(); int a[] = new int[n]; int ignorados = rellenaPares(a); System.out.println("Se han descartado " + ignorados + " elementos impares."); System.out.println("El array es de pares es " + Arrays.toString(a)); } //main static int rellenaPares(int pares[]) { Scanner sc = new Scanner(System.in); int i = 0; // contador de posiciones. int imp = 0; //contador de impares int num; while (i < pares.length) { System.out.print("Introduce número: "); num = sc.nextInt(); if (num % 2 == 0) { pares[i] = num; //par i++; } else { imp++; // impar } } // while return(imp); } // rellenaPares()
El código es un simple ejercicio de funciones y arrays. El usuario elige el número de posiciones a almacenar y y después introduce todos los datos que desee hasta completar el vector con números pares. Ningún número impar se almacena pero la función rellenaPares() devuelve el valor de descartes, A destacar que el vector a[] es modificado localmente en la función en su copia pares[], pero se modifica también el original.
Hola, me gustaría saber como se puede hacer este código pero con for.