alguien hizo esta practica?(pseudocodigo)

PuMa está baneado por "se acabó lo que se daba"
Me han pedido que haga esta práctica y queria saber si alguien tiene hecho algo parecido.




ENUNCIADO: JUEGO 357

Se toman quince cerillas y se colocan en tres filas de tres, cinco y siete cerillas respectivamente, de la forma siguiente:
III
IIIII
IIIIIII
Las reglas son sencillas: se juega por turnos después de acordar quién empieza, y en su turno cada jugador puede retirar tantas cerillas como desee, siempre que sean de la misma fila (y debe retirar por lo menos una). Pierde el jugador que retire la última cerilla. Por ejemplo, al comienzo de una partida, el que empieza podría quitar la fila de las siete cerillas completa. Luego, el siguiente podría quitar dos cerillas de la de cinco, luego el primer jugador quitar las tres que faltan de esa fila, y finalmente el segundo jugador quitar dos cerillas de la de tres, con lo que el primero pierde.
Sabemos que uno de los dos jugadores tiene una estrategia perfecta para jugar, de forma que gana siempre. ¿Cuál de ellos es? ¿Qué estrategia debe seguir?
El programa debe empezar pidiendo el nombre de los dos jugadores. El primer jugador introducido será el primero en jugar. Después mostrará las filas con las cerillas y, por cada jugador, preguntará de qué fila y cuántas cerillas se deben retirar (deben introducirse números correctos). Después de cada jugada volverá a mostrar las filas con las cerillas que quedan, y realizará otra jugada el siguiente jugador. Al final del juego mostrará el nombre del jugador ganador.

Ampliaciones:
1. En cada jugada se controla que los datos introducidos (fila y número de cerillas de la fila) sean correctos, y mientras no lo sean no permitirá continuar el juego.
2. Cuando acaba el juego se ofrece la posibilidad de volver a jugar.
3. Generalizar el juego a cualquier número de cerillas. Para ello debe introducirse el número de filas, el número de cerillas de la primera fila, y el incremento de cerillas de una fila a otra. Todas las cerillas deben poder verse en la pantalla.
Creo que gana el que empieza. Desarrollar el código no parece muy difícil, más si lo puedes hacer con orientación a objetos.

Si tienes alguna duda pregunta.

Saludos!
1 respuesta