Necesitas utilizar un array de tres posiciones.
Cada posición contendrá un premio. La posición asignada a cada premio ha de realizarse al azar.
Luego se pide un (y solo uno) número al usuario, entre 1 y 3.
Este número que da el usuario determina el premio recibido.
Hay que tener en cuenta que las posiciones del array van de 0 a 2, y el usuario nos da un valor de 1 a 3.
Por tanto, al valor que nos de habrá que restarle -1.
Si el usuario nos da un 3, le tocará el premio de la posición 2 -> (3 - 1 = 2)
En pantalla tendremos que indicarle qué ha ganado, y cuáles son los otros premios disponibles.
Bien, esa es la mecánica a seguir.
El programa principal podría quedar así:
- Declaramos las variables que necesitaremos, un array para los premios y un int para que el usuario elija un número.
- Usaremos un método que recibe el array de premios y asignará los tres premios disponibles.
- Luego pedimos un valor entre 1 y 3. Esta petición la hacemos dentro de un bucle que se repetirá hasta que el usuario nos de un valor dentro del rango que le pedimos.
- Por último, a otro método le pasaremos el array de premios y el número escogido por el usuario para que determine y muestre en pantalla que premio se ha ganado y cuáles no.
Vamos a ver los métodos.
El método de
asignarPremios() debería situar los premios en posiciones aleatorias, pero como dije al principio, de momento simplemente colocaremos los premios manualmente. Luego ya pensaremos como dar posiciones aleatorias.
El método de
mostrarPremios() ha de informar de lo ganado y no ganado.
Podemos hacerlo construyendo dos String, uno para informar de lo ganado y el segundo para los otros premios que estaban disponibles.
Entonces, con un bucle recorremos el array y el premio cuya posición se corresponda con la elección del usuario, lo concatenamos en el String del mensaje de premio ganado.
Los otros premios, los concatenaremos en el otro String.
Tras terminar el bucle, ya tendremos los dos mensajes construidos:
Ahora que tenemos todo el código, si lo probamos, veremos en pantalla que funciona:
Aquí ya tenemos varios objetivos del enunciado cumplido, solo faltaría lograr que las posiciones de los premios se asignen al azar. Así cada vez que se ejecute el programa, los premios estarán en distintas posiciones.
Porque ahora, los premios siempre están en el mismo sitio.
Esto lo veremos en el próximo mensaje. De momento, comprueba este código y asegúrate de que lo entiendes bien. Pregunta cualquier cosa que no te quede clara.
Pego aquí el código completo: