From 0de814d959c1a6ca2504dc07bc0af2dce3416d93 Mon Sep 17 00:00:00 2001 From: Julian B Date: Wed, 29 Mar 2017 10:28:27 +0200 Subject: [PATCH] Update ARE-DYNAMIC.py --- ARE-DYNAMIC.py | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/ARE-DYNAMIC.py b/ARE-DYNAMIC.py index 8982d67..3f4a06a 100644 --- a/ARE-DYNAMIC.py +++ b/ARE-DYNAMIC.py @@ -76,7 +76,6 @@ CouleursStrat=['b','r','black','g','purple'] #Vitesse de défilement des affichages dynamiques Vitesse = 500 - """ Types: Coord = tuple(x, y) @@ -365,14 +364,21 @@ def strat_toujours_avouer(joueur, adversaire): """ return 1 #1 : traître -def strat_altern(joueur, adversaire): - """ - Index: 2 - - Le joueur alterne entre nier et avouer +def strat_meilleur_gain(joueur, adversaire): """ + Index: 2 - return 1 - joueur['etat'] + Le joueur adopte l'état de l'adversaire ayant obtenu le meilleur gain (= le moins d'années de prison) + """ + max_gain = joueur['annees_de_prison'] + nveau_etat = joueur['etat'] + for i in range (-1,2): + for j in range (-1,2): #(i,j) sont les coordonnées de l'adversaire + if (0 <= x+i and x+i < len(Grille)) and (0 <= y+j and y+j < len(Grille[0])) and i != 0 and j != 0: + if Grille[i][j]['annees_de_prison'] < max_gain : + max_gain = Grille[i][j]['annees_de_prison'] + nveau_etat = Grille[i][j]['etat'] + return nveau_etat def strat_precedent_adversaire(joueur, adversaire): """ @@ -424,7 +430,7 @@ def init_complete(): ListeStrategies.append(strat_toujours_nier) # 0 ListeStrategies.append(strat_toujours_avouer) # 1 - ListeStrategies.append(strat_altern) # 2 + ListeStrategies.append(strat_meilleur_gain) # 2 ListeStrategies.append(strat_precedent_adversaire) # 3 ListeStrategies.append(strat_principal_adversaire) # 4 @@ -614,4 +620,3 @@ if __name__ == "__main__": simulation() afficher_strat_dynamique() -