Ejercicios: 1Eva_IIT2013_T3 Juego Semillero
Propuesta de solución en Python, realizada solo para dos jugadores.
Observe que al lanzar dos dados, el intervalo de valores posibles es [2,12].
dado1 = int(rnd.random()*6)+1 dado2 = int(rnd.random()*6)+1 suma = dado1 + dado2
La variable quien
determina el turno del jugador.
Se lanzan los dados como números aleatorios, se acumula los puntos para cada jugador y se resta la cantidad de fichas del semillero.
if (suma<=semillero): A = A + suma semillero = semillero -suma else: A = A +semillero semillero = 0
Se cambia el turno del jugador y se repite el proceso.
# cambia jugador if (quien==1): quien = 2 else: quien = 1
TAREA: Implementar con arrreglos para n jugadores.
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 1Eva_IIT2013_T3 Juego Semillero # usando solo dos jugadores import random as rnd # INGRESO apuesta = int(input('cuantas canicas: ')) while not(apuesta>=20): apuesta = int(input('mas de 20 canicas: ')) # PROCEDIMIENTO semillero = 2*apuesta A = 0 B = 0 quien = 1 while not(semillero<=0): # Juega A if (quien==1): dado1 = int(rnd.random()*6)+1 dado2 = int(rnd.random()*6)+1 suma = dado1 + dado2 if (suma<=semillero): A = A + suma semillero = semillero -suma else: A = A +semillero semillero = 0 # Juega B if (quien==2): suma = int(rnd.random()*11)+2 if (suma<=semillero): B = B + suma semillero = semillero - suma else: B = B + semillero semillero = 0 # cambia jugador if (quien==1): quien = 2 else: quien = 1 # Determina ganador gana = 1 if (A < B): gana = 2 if (B==A): gana = 0 # SALIDA print('canicas de A: ', A) print('canicas de B: ', B) print('estado semillero: ', semillero) print('jugador ganador: ', gana)
Ejecución del algoritmo
cuantas canicas: 20 canicas de A: 25 canicas de B: 15 estado semillero: 0 jugador ganador: 1 >>> cuantas canicas: 20 canicas de A: 20 canicas de B: 20 estado semillero: 0 jugador ganador: 0 >>> cuantas canicas: 20 canicas de A: 22 canicas de B: 18 estado semillero: 0 jugador ganador: 1 >>>