IA_TP_LAWSON-LARTEGO/TPIA/jeu_nim/exo3.py

24 lines
922 B
Python
Raw Normal View History

2024-10-23 21:37:10 +02:00
def appliquer_mouvement(etat_jeu, tas_index, nb_objets):
# Créer une copie de l'état du jeu pour ne pas modifier l'état original
nouvel_etat = etat_jeu.copy()
# Retirer nb_objets du tas à l'index tas_index
if 0 <= tas_index < len(nouvel_etat) and nouvel_etat[tas_index] >= nb_objets:
nouvel_etat[tas_index] -= nb_objets
else:
raise ValueError("Mouvement invalide : index du tas ou nombre d'objets incorrect")
return nouvel_etat
# Test 1 : Retirer 3 objets du tas 0 (le premier tas)
etat1 = appliquer_mouvement([3, 4, 5], 0, 3)
print("Test 1 :", etat1) # [0, 4, 5]
# Test 2 : Retirer 1 objet du tas 2 (le troisième tas)
etat2 = appliquer_mouvement([1, 0, 2], 2, 1)
print("Test 2 :", etat2) # [1, 0, 1]
# Test 3 : Retirer 1 objet du tas 1 (le deuxième tas)
etat3 = appliquer_mouvement([2, 2, 2], 1, 1)
print("Test 3 :", etat3) # [2, 1, 2]