Skip to content
Snippets Groups Projects
Commit 0ccf1984 authored by BiocheH's avatar BiocheH
Browse files

commit final touch + push + inversion lignes/colonnes au dernier moment

parent e7603273
Branches main
No related tags found
No related merge requests found
...@@ -50,13 +50,16 @@ class TabletteChocolat: ...@@ -50,13 +50,16 @@ class TabletteChocolat:
return TabletteChocolat(self.m - couple[0], self.n - couple[1]) return TabletteChocolat(self.m - couple[0], self.n - couple[1])
def plot(self): def plot(self):
'''
affiche la tablette courante
'''
plt.gca().set_aspect('equal') plt.gca().set_aspect('equal')
plt.axis('off') plt.axis('off')
plt.fill([0, self.m, self.m, 0], [0, 0, self.n, self.n], color='#D5B799') plt.fill([0, self.n, self.n, 0], [0, 0, self.m, self.m], color='#D5B799')
for i in range(self.m): for i in range(self.n):
for j in range(self.n): for j in range(self.m):
plt.plot([i+0.1, i+0.9, i+0.9, i+0.1, i+0.1], [j+0.1, j+0.1, j+0.9, j+0.9, j+0.1], color='#554739') plt.plot([i+0.1, i+0.9, i+0.9, i+0.1, i+0.1], [j+0.1, j+0.1, j+0.9, j+0.9, j+0.1], color='#554739')
plt.fill([self.m-0.9, self.m-0.1, self.m-0.1, self.m-0.9], [0.1, 0.1, 0.9, 0.9], color='#554739') plt.fill([self.n-0.9, self.n-0.1, self.n-0.1, self.n-0.9], [0.1, 0.1, 0.9, 0.9], color='#554739')
plt.show() plt.show()
def demander_coup(self): def demander_coup(self):
...@@ -69,21 +72,21 @@ class TabletteChocolat: ...@@ -69,21 +72,21 @@ class TabletteChocolat:
elif self.m == 1 and self.n == 1: elif self.m == 1 and self.n == 1:
print('on ne peut couper plus rien couper') print('on ne peut couper plus rien couper')
return self return self
elif self.m == 1: elif self.n == 1:
coup = 'l' coup = 'l'
print('on ne peut couper plus que des lignes') print('on ne peut couper plus que des lignes')
elif self.n == 1: elif self.m == 1:
coup = 'c' coup = 'c'
print('on ne peut couper plus que des colonnes') print('on ne peut couper plus que des colonnes')
if coup == 'l': if coup == 'c':
print('voici les coups possibles : ', ', '.join(str(i) + ' lignes' for i in range(1, self.n))) print('voici les coups possibles : ', ', '.join(str(i) + ' colonnes' for i in range(1, self.n)))
while not 1 <= taille_coupe <= self.n-1: while not 1 <= taille_coupe <= self.n-1:
taille_coupe = int(input('combien de lignes couper ? ')) taille_coupe = int(input('combien de colonnes couper ? '))
return self.coupe((0, taille_coupe)) return self.coupe((0, taille_coupe))
if coup == 'c': if coup == 'l':
print('voici les coups possibles : ', ', '.join(str(i) + ' colonnes' for i in range(1, self.m))) print('voici les coups possibles : ', ', '.join(str(i) + ' lignes' for i in range(1, self.m)))
while not 1 <= taille_coupe <= self.m-1: while not 1 <= taille_coupe <= self.m-1:
taille_coupe = int(input('combien de colonnes couper ? ')) taille_coupe = int(input('combien de lignes couper ? '))
return self.coupe((taille_coupe, 0)) return self.coupe((taille_coupe, 0))
...@@ -116,17 +119,19 @@ def tablettes_gagnantes_pour_Ursula(m: int, n: int): ...@@ -116,17 +119,19 @@ def tablettes_gagnantes_pour_Ursula(m: int, n: int):
return tablettes return tablettes
A = TabletteChocolat(1, 2) # Liste des tests effectués :
A = TabletteChocolat(1, 2) # q1, q2
B = TabletteChocolat(4, 8) B = TabletteChocolat(4, 8)
print(A) print(A) # q3
print(B) print(B)
print(list(B.coups_possibles())) print(list(B.coups_possibles())) # q4
print(B.coups_possibles()) print(B.coups_possibles())
print(B.est_possible((3, 0))) print(B.est_possible((3, 0))) # q5
print(B.est_possible((3, 2))) print(B.est_possible((3, 2)))
print(B.coupe((0, 5))) print(B.coupe((0, 5))) # q6
print(B.coupe((2, 0))) print(B.coupe((2, 0)))
#B.plot() #B.plot() # q7
#B.demander_coup().plot() #B.demander_coup().plot() # q8, q9
print(tablettes_gagnantes_pour_Ursula(8, 6)) print(tablettes_gagnantes_pour_Ursula(8, 6)) # technically q12
jouer(5, 5) jouer(5, 5) # q10
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment