import numpy as np import matplotlib.pyplot as plt import matplotlib.image as mping from os import getcwd,chdir import random as rd import sys#permet de fermer le programme def générationgrille(a): k=0#pour la grille fantome j=0 z=0#pour la boucle infinie u=0#concerne la pose du piquet, inutile choix=[] suite='true' jouer=[] if a=="facile": grillefan=np.array([[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]]) while k<=10: grillefan[rd.randrange(0,9)][rd.randrange(0,9)]=1 k=k+1 print(grillefan) grillejoueur=np.array(([['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X'],['X','X','X','X','X','X','X','X','X']])) # print(grillefan) while suite=='true':#permet de faire une boucle infinie print ('Ok,Quelle est la ligne de la case que vous voulez réveler?')#pour sélectionner une case xu=input() ab=int(xu) print('Ok.Quelle est la colonne de la case que vous voulez réveler?') yu=input() ord=int(yu) if grillefan[ab][ord]==1:#cas ou c'est perdu print(grillefan) print('BOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOM,t es mauvais Jack,tu sais pas jouer,veux-tu recommencer?') rep=input() if rep=='oui': #trouver un moyen de réexecuter le programme if rep=='non': sys.exit(0)#permet de fermer le programme quand il ne marcheplus # #trouver un moyen pour relancer le programme au début if grillefan[ab][ord]==0 and ab!=0 and ab!=8 and ord!=8 and ord!=0: #il faut faire les cas où on se situe aux extrémités,nombreux mais hyper répétitifs j=j+grillefan[ab-1][ord-1]+grillefan[ab-1][ord]+grillefan[ab-1][ord+1]+grillefan[ab][ord+1]+grillefan[ab][ord-1]+grillefan[ab+1][ord-1]+grillefan[ab+1][ord]+grillefan[ab+1][ord+1] if grillefan[ab][ord]==0 and ab==0 and ord!=0 and ord!=0: j=j+grillefan[ab][ord+1]+grillefan[ab][ord-1]+grillefan[ab+1][ord]+grillefan[ab+1] [ord-1]+grillefan[ab+1][ord+1] if grillefan[ab][ord]==0 and ab!=0 and ord!=8 and ab==8 and ord!=0: j=j+grillefan[ab-1][ord-1]+grillefan[ab-1][ord]+grillefan[ab-1][ord+1]+grillefan[ab][ord+1]+grillefan[ab][ord-1] if grillefan[ab][ord]==0 and ab!=0 and ord==0 and ab!=8 and ord!=8: j=j+grillefan[ab-1][ord]+grillefan[ab-1][ord+1]+grillefan[ab][ord+1]+grillefan[ab+1][ord]+grillefan[ab+1][ord+1] if grillefan[ab][ord]==0 and ab!=0 and ord!=0 and ab!=8 and ord==8: j=j+grillefan[ab-1][ord-1]+grillefan[ab-1][ord]+grillefan[ab][ord-1]+grillefan[ab+1][ord-1]+grillefan[ab+1][ord] if grillefan[ab][ord]==0 and ab==0 and ab!=8 and ord!=8 and ord==0: j=j+grillefan[ab][ord+1]+grillefan[ab+1][ord]+grillefan[ab+1][ord+1] if grillefan[ab][ord]==0 and ab==8 and ab!=0 and ord!=0 and ord==8: j=j+grillefan[ab-1][ord-1]+grillefan[ab-1][ord]+grillefan[ab][ord-1] if grillefan[ab][ord]==0 and ab==0 and ab!=8 and ord!=0 and ord==8: j=j+grillefan[ab][ord-1]+grillefan[ab+1][ord-1]+grillefan[ab+1][ord] if grillefan[ab][ord]==0 and ab!=0 and ab==8 and ord==0 and ord!=8: j=j+grillefan[ab-1][ord]+grillefan[ab-1][ord+1]+grillefan[ab][ord+1] if 'X' not in grillejoueur:#pour terminer le jeu en cas de victoire print("Bravo,c'est gagné, voulez vous recommencer?") choix=input() if choix=='oui': #trouver un moyen de relancer le programme if choix=='non': sys.exit(0) #normalement tout les cas ont été traités on sait donc le nombre de bombes aux alantours du point sans qu'un 'out of range' viennent nous les briser. #pour que le joueur puisse voir le résultat grillejoueur[ab][ord]=j j=j-j print(grillejoueur) print('voulez vous poser un drapeau')#mettre en place un drapeau drapeau=input()#mettre en place un drapeau if drapeau=='oui':#mettre en place un drapeau print('Quelle ligne')#mettre en place un drapeau lign=input()#mettre en place un drapeau ligne=int(lign)#mettre en place un drapeau print('Quelle colonne')#mettre en place un drapeau colon=input()#mettre en place un drapeau colonne=int(colon)#mettre en place un drapeau grillejoueur[ligne][colonne]='P'#mettre en place un drapeau print(grillejoueur) if drapeau=='non':#mettre en place un drapeau u=u+0#mettre en place un drapeau if 'X' in grillejoueur: suite=suite if 'X' not in grillejoueur: suite=suite+'False' #semble marcher pour le moment non