En este post de programación con Java vamos a resolver un ejercicio que dice así:
Escribe un método que después de introducir N enteros, calcule e imprima el producto de los números pares. Para saber si el número es par, deberás diseñar un método (no usar módulo).
Así que el programa pide dos cosas. La primera es sacar el producto de todos los números pares, y la segunda es que para saber si un número es par no se debe usar el operador módulo.
Vamos a ver cómo se resuelve este ejercicio de programación.
Antes de pasar a resolver el problema específico veamos cómo resolver lo del número par. Si quieres usar el operador módulo mira este post, y si quieres usar operaciones a nivel de bits mira este post.
Voy a continuar con el ejercicio suponiendo que ya conoces cómo funciona cada algoritmo.
Recordemos que el producto de números es básicamente la multiplicación de los mismos. Así que el producto de 2, 4 y 8 es 64 porque 2 x 4 x 8
es 64
.
Entonces vamos a iniciar la variable del resultado en 1, y por cada número escaneado que sea par, vamos a multiplicar el valor de la misma y asignarle el resultado. En código se entenderá mejor.
Como el ejercicio solicita hacer esto desde un método, el código queda así:
public static void productoDePares() {
Scanner sc = new Scanner(System.in);
int numero = 1;
int producto = 1;
while (numero != 0) {
System.out.println("Escribe un número (escribe 0 si quieres finalizar)");
numero = sc.nextInt();
if (numero != 0 && esPar(numero)) {
producto *= numero;
}
}
System.out.println("Producto de los números pares: " + producto);
}
Si te fijas en el código puedes ver que se van a solicitar números de manera infinita, hasta que el número en cuestión sea 0. Mientras no sea cero y el número sea par, se va a ir multiplicando y almacenando el resultado.
Cuando la ejecución termine vamos a imprimir el resultado. Y así es como se resuelve el ejercicio.
Ya te mostré el método, pero no el código completo, ejecutable y probado. Queda así:
/*
https://parzibyte.me/blog
*/
import java.util.Scanner;
public class Main{
public static void productoDePares() {
Scanner sc = new Scanner(System.in);
int numero = 1;
int producto = 1;
while (numero != 0) {
System.out.println("Escribe un número (escribe 0 si quieres finalizar)");
numero = sc.nextInt();
if (numero != 0 && esPar(numero)) {
producto *= numero;
}
}
System.out.println("Producto de los números pares: " + producto);
}
public static boolean esPar(int numero) {
// Puedes usar este método o el de operaciones de bits.
// https://parzibyte.me/blog/2021/03/01/java-numero-par-sin-modulo/
return numero % 2 == 0;
}
public static void main(String[] args) {
productoDePares();
}
}
Así es como se termina este post. Por aquí te dejo más posts sobre programación en Java.
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…
Esta web usa cookies.