importar al azar
Def Play_matchsticks (Sticks =21):
"" "
Juega un juego de fósforos donde la computadora siempre gana.
Args:
Sticks:el número inicial de fósforos (predeterminado:21).
Devoluciones:
Ninguno
"" "
Imprima (F "¡Bienvenido al juego de Matchstick! Hay {palitos} palos").
mientras que los palos> 0:
# Turno del jugador
jugador_take =int (input ("¿Cuántos palos quieres tomar (1, 2 o 3)?"))
Mientras que jugador_take <1 o jugador_take> 3:
jugador_take =int (entrada ("Entrada no válida. Ingrese 1, 2 o 3:"))
Sticks -=Player_take
imprime (f "tomó {jugador_take} palos. quedan {palos}.
# Turno de computadora (siempre gana)
Si palos> 0:
# La computadora siempre toma una serie de palos para dejar un múltiplo de 4
Computer_take =4 - (palos % 4)
imprime (f "la computadora tomó {computer_take} Sticks.")
Sticks -=Computer_take
imprimir (f "quedan {palitos}.")
# Determinar el ganador
Si Sticks ==0:
Imprima ("¡Perdiste! La computadora gana")
demás:
Imprima ("¡Ganas! La computadora perdida")
Comience el juego
play_matchsticks ()
`` `` ``
Explicación:
1. Estrategia ganadora: La clave para ganar este juego es obligar a tu oponente a elegir siempre una serie de palos que deja un múltiplo de 4 restantes.
- Si le quedan 4 palos, siempre ganará porque puede tomar los 4.
- Si le quedan 8 palos, puede tomar 4 y dejar 4 para su oponente.
2. Lógica de la computadora:
- El `Computer_take =4 - (palos % 4)` La línea calcula cuántos palos debe tomar la computadora para dejar un múltiplo de 4.
- `Sticks % 4` da el resto cuando 'Sticks' se divide por 4.
- `4 - (palos % 4)` Asegura que después del turno de la computadora, el número de palos restantes siempre será un múltiplo de 4.
3. Entrada del usuario:
- El código solicita al usuario la entrada y lo valida para asegurarse de que elija un número entre 1 y 3.
4. Flujo de juego:
- El juego continúa hasta que no quedan palos.
- Después del turno de cada jugador, se imprimen los palos restantes.
Cómo jugar:
1. Ejecute el código.
2. El juego comienza con 21 palos (puedes cambiar esto en la función `play_matchsticks`).
3. Usted elige tomar 1, 2 o 3 palos en cada giro.
4. La computadora siempre tomará la cantidad correcta de palos para dejar un múltiplo de 4 para usted.
5. Eventualmente, se verá obligado a tomar los últimos 4 palos, lo que hace que la computadora sea el ganador.
Este código asegura que la computadora siempre gane el juego.