S.5 Juego tirar dados
import random
#EJEMPLO 1
def ini_joc () :
nums_jugadors = int(input("Quants jugadors sou? "))
noms = []
for i in range(nums_jugadors) :
noms.append(input("Quin és el vostre nom? "))
rondes= int(input("Quantes rondes voleu jugar? "))
return nums_jugadors, noms, rondes
nums_jugadors, noms, rondes = ini_joc()
print(f'{nums_jugadors, noms, rondes}')
#EJEMPLO 2
def recompte_gen(nums_jugadors, rondes) :
puntuació = []
for ronda in range(rondes):
ronda_puntuacions = [0] * nums_jugadors
puntuació.append(ronda_puntuacions)
return puntuació
# Exemple
resultat = recompte_gen(nums_jugadors,rondes)
print(resultat)
#EJEMPLO 3
def tirada2daus() :
tirada1= (random.randint(1, 6))
tirada2= (random.randint(1, 6))
tirades= tirada1+tirada2
return tirades
tirar2daus = tirada2daus()
print(tirar2daus)
#EJEMPLO 4
def aposta(nom, rondes):
resultat = 0
for ronda in range(rondes):
resultat_tirada = tirada2daus()
resultat += resultat_tirada
print(f'{nom} ha tret un {resultat_tirada}. Resultat acumulat: {resultat}')
if resultat > 21:
print(f'{nom} ha perdut amb un total de {resultat}.')
resultat = 0
else:
resposta = input(f'{nom}, vols tornar a tirar? (si/no): ')
if resposta.lower() != 'si':
break
return resultat
for ronda in range(rondes):
print(f"\n** Ronda {ronda + 1} **")
puntuacions_ronda = []
for nom_jugador in noms:
resultat_final = aposta(nom_jugador, rondes)
print(f'{nom_jugador} ha aconseguit un resultat final de {resultat_final}')
puntuacions_ronda.append(resultat_final)
guanyador_ronda = noms[puntuacions_ronda.index(max(puntuacions_ronda))]
print(f'Guanyador de la ronda {ronda + 1}: {guanyador_ronda}')
#EJEMPLO 5
def pos_max(llista):
posicio_maxima = llista.index(max(llista))
return posicio_maxima
# Ejemplo
puntuacions_finales = [sum(resultat[ronda]) for ronda in range(rondes)]
guanyador = noms[pos_max(puntuacions_finales)]
print(f'Guanyador del joc: {guanyador}')
Comentarios
Publicar un comentario