TP3 Mise en forme et rigueur
En gros, faire son chieur
This commit is contained in:
parent
22a63f7aeb
commit
7c59e138ac
|
@ -17,7 +17,7 @@ http://fr.wikipedia.org/wiki/Bataille_navale_%28jeu%29
|
|||
|
||||
__author__ = 'BEAUSSART Jean-loup & PREUD\'HOMME Geoffrey'
|
||||
# TODO Metre à jour avant envoi
|
||||
__date_creation__ = 'Tue, 10 Feb 2015 11:26:19 +0100'
|
||||
__date_creation__ = 'Mon, 16 Feb 2015 19:18:54 +0100'
|
||||
|
||||
|
||||
###############################################
|
||||
|
@ -65,6 +65,7 @@ def jouer(nom, descr):
|
|||
à un fichier de description.
|
||||
"""
|
||||
jeu = cree_jeu(descr)
|
||||
print(jeu)
|
||||
decrire_le_jeu(jeu)
|
||||
nbre_tirs = 0
|
||||
while not tous_coules(jeu):
|
||||
|
@ -114,24 +115,21 @@ def lire_donnees(num_descr):
|
|||
|
||||
return (largeur, hauteur, navires)
|
||||
|
||||
# test OK
|
||||
# print(lire_donnees('2'))
|
||||
# Tests
|
||||
# print(lire_donnees('1'))
|
||||
#
|
||||
# print(lire_donnees('2'))
|
||||
# print(lire_donnees('3')) # Fichier personnalisé
|
||||
|
||||
# Fichier personnalisé
|
||||
# print(lire_donnees('3'))
|
||||
#
|
||||
|
||||
# Sauvegarde du bilan
|
||||
# Question 1
|
||||
|
||||
# print(datetime.today())
|
||||
# 2015-02-10 11:25:48.324981
|
||||
# On obtient la date et l'heure au format AAAA-MM-JJ HH:MM:S
|
||||
# >>> datetime.today()
|
||||
# datetime.datetime(2015, 2, 16, 19, 6, 17, 207811)
|
||||
# On obtient la date et l'heure sous forme d'objet datetime
|
||||
|
||||
# str(datetime.today())
|
||||
# on convertie en chaîne de caractères la date et l'heure
|
||||
# >>> str(datetime.today())
|
||||
# '2015-02-16 19:07:31.624846'
|
||||
# On obtient la date et l'heure au format AAAA-MM-JJ HH:MM:SS.UUUUUU
|
||||
|
||||
|
||||
def sauver_result(nom, jeu, nbre):
|
||||
|
@ -144,19 +142,17 @@ def sauver_result(nom, jeu, nbre):
|
|||
CU : aucune
|
||||
"""
|
||||
|
||||
date = str(datetime.today())
|
||||
|
||||
with open(FICHIER_RESULT, 'a') as fichierScores:
|
||||
fichierScores.write('%s:%s:%s:%s\n' % (nom, jeu, nbre, date))
|
||||
fichierScores.write(':'.join([nom, str(jeu), str(nbre), str(datetime.today())]) + '\n')
|
||||
|
||||
# sauver_result ('giouog', 2, 125)
|
||||
# sauver_result ('nom', 52, 12)
|
||||
# sauver_result ('gei', 1112, 12356)
|
||||
# sauver_result ('fgt', 12, 1458)
|
||||
# sauver_result('Pisitrate', 2, 125)
|
||||
# sauver_result('Aristide', 52, 12)
|
||||
# sauver_result('Caligula', 1112, 12356)
|
||||
# sauver_result('Périclès', 12, 1458)
|
||||
|
||||
###############################################
|
||||
# Procédures de construction du jeu
|
||||
###############################################
|
||||
###############################################<
|
||||
|
||||
|
||||
def cree_jeu(descr):
|
||||
|
@ -179,6 +175,7 @@ def cree_jeu(descr):
|
|||
|
||||
CU : le fichier doit contenir une description correcte du jeu (cf lire_donnees)
|
||||
"""
|
||||
|
||||
donnees = lire_donnees(descr)
|
||||
nb_cases_occupees = 0
|
||||
etats_navires = dict()
|
||||
|
@ -188,6 +185,10 @@ def cree_jeu(descr):
|
|||
return {'plateau': cree_plateau(*donnees), 'nb_cases_occupees' : nb_cases_occupees, \
|
||||
'touches': {'nb_touches': 0, 'etats_navires': etats_navires}, 'coups_joues': set()}
|
||||
|
||||
# Tests
|
||||
# print(cree_jeu('1'))
|
||||
# print(cree_jeu('2'))
|
||||
# print(cree_jeu('3'))
|
||||
|
||||
def cree_plateau(l, h, l_nav):
|
||||
"""
|
||||
|
@ -239,9 +240,9 @@ def est_placable(esp, nav, pos, disp):
|
|||
# Tests
|
||||
# espTest = {'larg': 4, 'haut': 3, (1, 2): 'grand', (2, 2): 'grand', (4, 1): 'petit'}
|
||||
# print(est_placable(espTest, ('Poutre', 3), (1, 1), 'H')) # True
|
||||
# print(est_placable(espTest, ('Poutre', 3), (1, 1), 'V')) # False
|
||||
# print(est_placable(espTest, ('Poutre', 3), (3, 1), 'V')) # True
|
||||
# print(est_placable(espTest, ('Poutre', 3), (3, 2), 'V')) # False
|
||||
# print(est_placable(espTest, ('Buche', 3), (1, 1), 'V')) # False
|
||||
# print(est_placable(espTest, ('Règle', 3), (3, 1), 'V')) # True
|
||||
# print(est_placable(espTest, ('Antenne', 3), (3, 2), 'V')) # False
|
||||
|
||||
def placer(esp, nav):
|
||||
"""
|
||||
|
@ -260,14 +261,13 @@ def placer(esp, nav):
|
|||
esp[c] = nav[0]
|
||||
return
|
||||
|
||||
# Test
|
||||
# Tests
|
||||
# espTest2 = {'larg': 4, 'haut': 3}
|
||||
# placer(espTest2, ('grand', 2))
|
||||
# placer(espTest2, ('petit', 1))
|
||||
# print(espTest2) # Aléatoire
|
||||
|
||||
|
||||
|
||||
###############################################
|
||||
# Procédures de déroulement du jeu
|
||||
###############################################
|
||||
|
@ -343,6 +343,14 @@ def analyse_un_tir(jeu, tir):
|
|||
jeu["coups_joues"].add(tir)
|
||||
return ('', RATE)
|
||||
|
||||
# Tests
|
||||
# test = {'nb_cases_occupees': 3, 'plateau': {'haut': 3, (2, 3): 'grand', 'larg': 4, (2, 1): \
|
||||
# 'petit', (2, 2): 'grand'}, 'coups_joues': set((1, 2)), 'touches': {'etats_navires': {'grand': 2, \
|
||||
# 'petit': 1}, 'nb_touches': 0}}
|
||||
# print(analyse_un_tir(test, (1, 1)) == ('', RATE))
|
||||
# print(analyse_un_tir(test, (1, 2)) == ('', RATE))
|
||||
# print(analyse_un_tir(test, (2, 2)) == ('grand', TOUCHE))
|
||||
# print(analyse_un_tir(test, (2, 1)) == ('petit', COULE))
|
||||
|
||||
def tous_coules(jeu):
|
||||
"""
|
||||
|
@ -361,9 +369,8 @@ def tous_coules(jeu):
|
|||
###############################################
|
||||
|
||||
if __name__ == '__main__':
|
||||
import sys
|
||||
|
||||
if len (sys.argv) != 3:
|
||||
jouer ('Jean Bart','1')
|
||||
else:
|
||||
jouer (sys.argv[1],sys.argv[2])
|
||||
import sys
|
||||
if len(sys.argv) != 3:
|
||||
jouer('Jean Bart', '1')
|
||||
else:
|
||||
jouer(sys.argv[1], sys.argv[2])
|
||||
|
|
Reference in a new issue