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

Desafío: construyendo una nueva aplicación

public class DesafioPiedraPapelOTijera { public static void main(String[] args) { Random random = new Random(); Scanner scanner = new Scanner(System.in);

    int eleccionUsuario;

    System.out.println("Bienvenido al juego de PIEDRA, PAPEL o TIJERA! \nQue eliges tu?" +
            "\n1-Piedra \n2-Papel\n3-Tijera\n4-Finalizar");

    while (true) {
        int numRandom = random.nextInt(1, 4); //1 - piedra, 2-papel, 3-tijera
        System.out.println("random = " + numRandom);
        while (true) {
            eleccionUsuario = scanner.nextInt();
            if (eleccionUsuario == 1 || eleccionUsuario == 2 || eleccionUsuario == 3 || eleccionUsuario == 4) {
                break;
            }
            System.out.println("Respuesta Incorrecta, ingresa una de las opciones" +
                    "\n1-Piedra \n2-Papel \n3-Tijera\n4-Finalizar");
        }
        if(eleccionUsuario == 4){
            System.out.println("Juego finalizado! hasta luego!!");
            break;
        }

        //Casos en los que gana el usuario
        System.out.println("Usuario escogio: " + eleccionUsuario);
        System.out.println("Computadora escogio: " + numRandom);
        if ((eleccionUsuario == 1 && numRandom == 3) ||
                (eleccionUsuario == 2 && numRandom == 1) ||
                (eleccionUsuario == 3 && numRandom == 2)) {
            System.out.println("Ganaste!!");
            break;
        }
        //Casos en los que pierde el usuario
        if ((eleccionUsuario == 3 && numRandom == 1) ||
                (eleccionUsuario == 1 && numRandom == 2) ||
                (eleccionUsuario == 2 && numRandom == 3)) {
            System.out.println("Perdiste!!");
            break;
        }
        System.out.println("Empate! intentalo de nuevo!");
        System.out.println("ingresa una de las opciones" +
                "\n1-Piedra \n2-Papel \n3-Tijera\n4-Finalizar");
    }
}

}

1 respuesta

Hola, Jorge, espero que estés bien.

He revisado el código que compartiste para el juego de Piedra, Papel o Tijera y parece que está bastante bien estructurado. Sin embargo, si estás buscando mejorar o modificar algo, aquí tienes algunas sugerencias:

  1. Continuar jugando después de ganar o perder: Actualmente, el juego termina cuando el usuario gana o pierde. Si deseas que el juego continúe hasta que el usuario decida finalizar, puedes eliminar los break dentro de las condiciones de ganar o perder. Esto permitirá que el juego siga ejecutándose hasta que el usuario elija la opción de finalizar.

  2. Mejorar la interacción del usuario: Podrías agregar mensajes más detallados o animados para mejorar la experiencia del usuario. Por ejemplo, después de cada ronda, podrías mostrar un mensaje que indique el puntaje acumulado o cuántas rondas se han jugado.

  3. Validación de entrada: Aunque ya tienes una validación básica para las entradas del usuario, podrías considerar manejar excepciones en caso de que el usuario ingrese un valor no numérico, para evitar que el programa se cierre inesperadamente.

Espero que estas sugerencias te sean útiles y te ayuden a mejorar tu aplicación. ¡Bons estudios!