Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • main
1 result

Target

Select target project
  • g20009442/examen
1 result
Select Git revision
  • main
1 result
Show changes

Commits on Source 10

#Imports éventuels
import itertools as it
import matplotlib as plt
#AJouts de fonctions et méthode
class TabletteChocolat:#création de la classe
def __init__(self,m,n):#initialisation du constructeur
self.n=n
self.m=m
if not isinstance(n,int) or not isinstance(m,int):#permet de sortir une erreur si m et n ne sont pas entiers
raise TypeError
def __str__(self):#surcharge de str
return "Tablette de Chocolat "+str(self.m)+"x"+str(self.n)
def __repr__(self): #surcharge de repr
return "Tablette de chocolat de"+str(self.m)+"x"+str(self.n)
def coups_possibles(self):#créer un générateur qui donne les coups possibles
g=[]
h=[]
for j in range(1,self.n):
g.append((0,j))
for i in range(1,self.m):
h.append((i,0))
return it.chain(h,g)
def est_possible(self,i,j): #méthode pour demander si le coup est possible à jouer
if (i,j) in list(self.coups_possibles()):
return True
def coupe(self,i,j):#enleves le carreau joué
return TabletteChocolat(self.m-i,self.n-j)
def demander_coup(self):#demandes le coup à jouer
possibilité=print(list(self.coups_possibles()))
i = input("quel ligne voulez vous couper")
j = input("quel colonne voulez vous couper")
while not (i,j) in list(self.coups_possibles()):
i = input("quel ligne voulez vous couper")
j = input("quel colonne voulez vous couper")
return (i,j)
def jouer(self,k,l):#permet de jouer
t=TabletteChocolat(k,l)
while t.k!=0 and t.l!=0:
t.demander_coup()
print(t)
#Programme principal
if True: # __name__=='main':
t = TabletteChocolat(3,4)
g = t.coups_possibles()
print(t.est_possible(0,2))
print(t.coupe(0,2))
print(t)
print(list(g))
t.demander_coup()
\ No newline at end of file