| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 
 | from tkinter import*
from random import randint
 
def allum(): #création des allumettes et de leurs positions 
	x=0
	y=0
	x1=10
	y1=20 
	Canevas.delete(ALL)# Pour qu'a chaque fois qu'on appuie sur le bouton1(jouer) on efface tout et on recommence
	Canevas.create_line((250,10),(250,5000)) #ecart entre allumettes des paquets 1 et 2 
	Canevas.create_line((500,10),(500,5000))# ecart entre allumettes des paquets 2 et 3
	Canevas.create_line((750,10),(750,5000))# ecart entre allumettes des paquets 3 et 4
	texte0=Canevas.create_text(125,10, text="Paquet 1" ,font=("Arial",14,"bold","underline"))
	texte1=Canevas.create_text(375,10, text="Paquet 2",font=("Arial",14,"bold","underline"))
	texte2=Canevas.create_text(625,10, text="Paquet 3",font=("Arial",14,"bold","underline"))
	texte3=Canevas.create_text(875,10, text="Paquet 4",font=("Arial",14,"bold","underline"))
	L=[]
 
	for i in range(4):
		L.append(randint(1,10)) #Pour mettre les allumettes aléatoire entre 1 et 10 dans les 4 paquets
		couleurs=["red","blue", "green", "pink"] 
	for j in range (4):
		for i in range (L[j]):
			Id.append(Canevas.create_rectangle(x+x1,100,y+y1,200,fill=couleurs[j]))
			x1=x1+20
			y1=x1+10
		x=x+250
		y=y+250
		x1=10
		y1=20
 
def Clic(event):
 
    global couleur_choisie,premiere_couleur,seconde_couleur
    supprime=False
 
    # on recupere la position du pointeur de la souris
    X = event.x
    Y = event.y
 
 
    i=0 #debut du parcours de la liste
 
    while(not(supprime) and i<len(Id)):
    #tant que j'ai pas supprime l alumette et que j'ai pas finis la liste, je cherche dans la liste des identifiants d'allumettes si il y a une alumette a l endroit ou j ai clique 
 
 
        [xmin,ymin,xmax,ymax] = Canevas.coords(Id[i])# je recupere pour chaque alumette ses coordonnees
 
        if (xmin<X and xmax>X and ymin<Y and ymax>Y):#si j'ai clique sur l alumette 
 
                    Canevas.delete(Id[i])#je la supprime visuellement
                    del Id[i]# et je la supprime de la liste des identifiants
                    supprime=True# me permet de sortir de la boucle, c'est a dire que si j'ai supprime l alumette ca sert a rien de parcourir la suite de la liste
 
 
        i=i+1 # je passe a l element suivant
 
 
 
 
def Changement():
       tour = (tour + 1) % 2
       al= choix
       if al > 0:
               if tour == 0:
                       joueur()
 
 
 
 
 
 
 
 
 
 
 
 
#PRG PRINCIPAL
 
#notre fenetre graphique 
fenetre = Tk()
fenetre.title('Le jeu des allumettes ')
 
 
couleur_choisie=False
 
 
# Variables globales
Largeur = 980
Hauteur = 520
L=[] 
Id=[] # liste des identifiants d'allumettes
 
 
 
Canevas = Canvas(fenetre, width = Largeur, height =Hauteur, bg ='white')
Canevas.pack()
 
bouton1=Button(fenetre, bg='pink' , text="Nouveau jeu",command=allum)
bouton1.pack()
bouton2=Button(fenetre, bg='blue' , text="Changement de joueur",command=Changement)
bouton2.pack()
 
Canevas.bind('<Button-1>', Clic)
Canevas.pack()
Canevas.bind('<Button-2>', Clic)
Canevas.pack()
 
texte0=Label(fenetre,text="le joueur qui joue est B")
texte0.pack()
 
 
fenetre.mainloop()
#Chaque joueur joue chaq'un son tour , ils peuvent prendre seulement 3 allumettes dans 1 seul paquet choisit et puis le dernier qui a l'allumettes a gagné |