Bonjour,
J'ai fais un programme python pour un morpion, mais la programme n'empêche pas le fait de pouvoir récrire un symbole sur un même symbole.
Programme :
nbt=0 #compteur de nombre de tour
t=1 #défini c'est a qui de jouer
case=['0']*9 #verifie quel symbole dans quelle case
def Nouveaujeu(jeu): #debut du nouveau jeu
for i in range (0,10):
jeu.append(".")
def Afficherjeu(jeu): #tableau du jeu
print(jeu[1],jeu[2],jeu[3],' ','1 2 3')
print(jeu[4],jeu[5],jeu[6],' ','4 5 6')
print(jeu[7],jeu[8],jeu[9],' ','7 8 9')
def Joueruncoupj1(jeu):
numero=11
while numero>9 or numero<1:
numero=int(input("Joueur 1, choisis un endroit"))
while case[numero - 1]==1 or case[numero - 1]==2 :
numero=int(input("Joueur 1, choisis un autre endroit"))
case[numero - 1]="1"
jeu[numero]="x"
def Joueruncoupj2(jeu):
numero=11
while numero>9 or numero<1:
numero=int(input("Joueur 2, choisis un endroit"))
while case[numero - 1]==1 or case[numero - 1]==2 :
numero=int(input("Joueur 2, choisis un autre endroit"))
case[numero - 1]="2"
jeu[numero]="o"
jeu=[]
Nouveaujeu(jeu)
Afficherjeu(jeu)
print("\n")
while nbt != 8:
if t==1:
Joueruncoupj1(jeu)
t=t-1
nbt=nbt+1
Afficherjeu(jeu)
print("\n")
print(nbt)
print(t)
print(case)
if t==0:
Joueruncoupj2(jeu)
t=t+1
nbt=nbt+1
Afficherjeu(jeu)
print("\n")
print(nbt)
print(t)
print(case)
Joueruncoupj1(jeu)
Afficherjeu(jeu)
print(nbt)
print(t)
print(case)
Merci d'avance
salut
en fait tu remplis au départ avec des points puis tu distingues les deux joueurs avec des x ou des o
donc il faut adapter :
si case = "." alors ok ... (jouer) sinon rejouer
par contre si je fait les conditions pour gagner, mon programme passe de 100 lignes à 150, c'est grave ?
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :