Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafio numero par e impar con dos propuestas

import java.util.Scanner;

public class Principal {

public static void main(String[] args) {

    Scanner scanner = new Scanner(System.in);

    for(int number=0 ;number <= 10 ; number++){
        number = scanner.nextInt();
        if (number%2 == 0){
            System.out.println("El numero " + number + " es par" );
        } else {
            System.out.println("El numero " + number + " es impar");
        }
    }
    scanner.close();


    // Otra forma
    int valor = 7;
    int [] numberspar = {2,4,6,8,10};
    int [] numbersimpar = {1,3,5,7,9};

    if (valor == numberspar[0] || valor == numberspar[1] || valor == numberspar[2] || valor == numberspar[3]){
        System.out.println("valor par");
    }else if(valor == numbersimpar[0] || valor == numbersimpar[1] || valor == numbersimpar[2] || valor == numbersimpar[3]){
        System.out.println("valor impar");
    } else {
        System.out.println("fuera del rango");
    }
}

}

1 respuesta

Hola David,

¡Espero que estés bien! Veo que estás trabajando en un ejercicio para determinar si un número es par o impar. Vamos a revisar tus dos propuestas.

  1. Primera propuesta con for y Scanner:

En esta parte, estás usando un bucle for para iterar y leer números del usuario. Sin embargo, hay un pequeño detalle: dentro del bucle for, estás sobrescribiendo la variable number con el valor ingresado por el usuario. Esto hace que el bucle no se ejecute como esperas, ya que la condición number <= 10 puede no cumplirse después de la primera iteración. Una solución sería cambiar el bucle for por un bucle while si deseas que el usuario ingrese números indefinidamente hasta que decida parar. Aquí tienes un ejemplo:

import java.util.Scanner;

public class Principal {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        int number;

        System.out.println("Ingresa un número (o un número negativo para salir):");
        while ((number = scanner.nextInt()) >= 0) {
            if (number % 2 == 0) {
                System.out.println("El número " + number + " es par");
            } else {
                System.out.println("El número " + number + " es impar");
            }
        }
        scanner.close();
    }
}
  1. Segunda propuesta con arrays:

En este enfoque, estás comparando un valor específico con elementos de dos arrays para determinar si es par o impar. Esto funciona, pero está limitado a los valores que has definido en los arrays. Para un enfoque más general, podrías simplemente verificar si el número es divisible por 2, como lo hiciste en el primer enfoque. Aquí te dejo una versión simplificada:

public class Principal {

    public static void main(String[] args) {

        int valor = 7; // Puedes cambiar este valor para probar otros números

        if (valor % 2 == 0) {
            System.out.println("El número " + valor + " es par");
        } else {
            System.out.println("El número " + valor + " es impar");
        }
    }
}

Espero que estas sugerencias te sean útiles. ¡Sigue practicando y verás cómo mejoras cada día!

Espero haber ayudado y buenos estudios!