From 84d10a61504f4d60be1b718abe33d2c521aef01e Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Tue, 17 Feb 2015 10:41:01 +0100 Subject: [PATCH 1/3] TP3A Typo --- S2/TP3/bataille_navale_ia.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/S2/TP3/bataille_navale_ia.py b/S2/TP3/bataille_navale_ia.py index 5199634..ed9c329 100644 --- a/S2/TP3/bataille_navale_ia.py +++ b/S2/TP3/bataille_navale_ia.py @@ -48,7 +48,7 @@ def jouerIA(nom, descr, niveau): def choisir_tir(jeu, res, niveau): - niveaux = [chosir_tir_1, chosir_tir_2, chosir_tir_3] + niveaux = [chosir_tir_1, choisir_tir_2, choisir_tir_3] fonction = niveaux[niveau - 1] return fonction(jeu, res) From 6dacab5b62a9cca0eb55e01deaaf6d3de0933ddf Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Tue, 17 Feb 2015 11:10:23 +0100 Subject: [PATCH 2/3] TP3A Modifications mineures --- S2/TP3/bataille_navale_ia.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/S2/TP3/bataille_navale_ia.py b/S2/TP3/bataille_navale_ia.py index ed9c329..a053f26 100644 --- a/S2/TP3/bataille_navale_ia.py +++ b/S2/TP3/bataille_navale_ia.py @@ -34,7 +34,6 @@ def jouerIA(nom, descr, niveau): while not BN.tous_coules(jeu): BN.afficher_jeu(jeu) # Décommenter pour une nouvelle fonctionalité tir = choisir_tir(jeu, res, niveau) - print('Tir chosi :', tir) nbre_tirs += 1 nav, res = BN.analyse_un_tir(jeu, tir) if res == BN.RATE: @@ -48,12 +47,14 @@ def jouerIA(nom, descr, niveau): def choisir_tir(jeu, res, niveau): - niveaux = [chosir_tir_1, choisir_tir_2, choisir_tir_3] + niveaux = [choisir_tir_1, choisir_tir_2, choisir_tir_3] fonction = niveaux[niveau - 1] - return fonction(jeu, res) + tir = fonction(jeu, res) + print('Tir chosi :', tir) + return tir -def chosir_tir_1(jeu, res): +def choisir_tir_1(jeu, res): x = randint(0, jeu['plateau']['larg']) y = randint(0, jeu['plateau']['haut']) return (x, y) From 7114d9bf44e18a82705d87bb3b593fb1a4b39950 Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Tue, 17 Feb 2015 11:13:13 +0100 Subject: [PATCH 3/3] =?UTF-8?q?TP3A=20choisir=5Ftir=5F3=20pr=C3=A9par?= =?UTF-8?q?=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Agit comme choisir_tir_2 pour le moment Nbre de tir bizarrement > 100 --- S2/TP3/bataille_navale_ia.py | 35 +++++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/S2/TP3/bataille_navale_ia.py b/S2/TP3/bataille_navale_ia.py index a053f26..87049ed 100644 --- a/S2/TP3/bataille_navale_ia.py +++ b/S2/TP3/bataille_navale_ia.py @@ -65,9 +65,36 @@ def choisir_tir_2(jeu, res): return (x, y) def choisir_tir_3(jeu, res): - x = randint(0, jeu['plateau']['larg']) - y = randint(0, jeu['plateau']['haut']) - return (x, y) + # Définition du mode + if 'ia' not in jeu: + jeu['ia'] = dict() + jeu['ia']['mode'] = 0 + print(type(res), res) + if type(res) == int: + if res == BN.COULE: + jeu['ia']['mode'] = 0 + elif res == BN.TOUCHE: + print('Again') + jeu['ia']['mode'] = 1 + + # Acteur + if jeu['ia']['mode'] == 1: # Si en mode recherche + print('DEBUG MODE RECHERCHE') + while 1: + x = randint(0, jeu['plateau']['larg']) + y = randint(0, jeu['plateau']['larg']) + coup = (x, y) + if coup not in jeu['coups_joues']: + break + else: # Si en mode aléatoire + while 1: + x = randint(0, jeu['plateau']['larg']) + y = randint(0, jeu['plateau']['larg']) + coup = (x, y) + if coup not in jeu['coups_joues']: + break + d_coup = coup + return coup if __name__ == '__main__': @@ -75,4 +102,4 @@ if __name__ == '__main__': if len(sys.argv) != 4: jouerIA('Pirate borgne', '1', 1) else: - jouerIA(sys.argv[1], sys.argv[2], sys.argv[3]) + jouerIA(sys.argv[1], sys.argv[2], int(sys.argv[3]))