Función rellenaPares() en Java: almacena sólo numeros pares y descarta impares

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.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Solve : *
26 − 17 =