#Projet VISIT CMI INFO #Méthode de turing """ Pour soustraire 1 : E1 : VIDE VIDE GAUCHE E2 E2 : 0 0 GAUCHE E2 1 1 GAUCHE E2 VIDE VIDE DROITE E3 E3 : 0 1 DROITE E3 1 0 DROITE FIN VIDE VIDE DROITE FIN """ #Pour lancer programme: #etat1(tab,0) #exemp;e de tableau tab=[-1,1,0,0,0,1,-1] tab1=[-1,1,1,1,-1] tab2=[-1,1,0,0,1,0,-1] def etat1(tab,lire): """tab : un tableau d'entier lire : 0 car c'est le premier indicedu tableau """ """ c'est l'état 1 : VIDE VIDE GAUCHE E2""" if tab[lire] == -1: # la tete de lecture lit VIDE tab[lire]=-1 # elle ecrit VIDE lire+=1 # elle se depalce à droite etat2(tab,lire) # elle passe à l'état 2 def etat2(tab,lire): """ c'est l'état 2 : 0 0 GAUCHE E2 1 1 GAUCHE E2 VIDE VIDE DROITE E3 """ if tab[lire]==0: # la tete de lecture lit 0 tab[lire]=0 # elle ecrit 0 lire+=1# elle se depalce à droite etat2(tab,lire) # elle passe a l'état 2 elif tab[lire]==1: # la tete de lecture lit 1 tab[lire]=1 # elle ecrit 1 lire+=1 # elle se deplace à droite etat2(tab,lire) # elle passe à l'état 2 elif tab[lire]==-1: # la tete de lecture lit VIDE tab[lire]=-1 #elle ecrit VIDE lire-=1 # elle se deplace à gauche etat3(tab,lire) # elle passe à l'état 3 def etat3(tab,lire): """ C'est l'état 3 : 0 1 DROITE E3 1 0 DROITE FIN VIDE VIDE DROITE FIN""" if tab[lire]==0: #la tete de lectre lit 0 tab[lire]=1 # elle ecrit 1 lire-=1 # elle se deplace à gauche etat3(tab,lire) # Fin du programme elif tab[lire]==1: # la tete de lecture lit 1 tab[lire]=0 # elle ecrit 0 lire-=1 # elle se deplace à gauche print(tab) return tab # elle passe à l'état 3 elif tab[lire] ==-1: #la tete de lecture lit VIDE tab[lire]=-1 # elle ecrit VIDE lire-=1 # elle se deplace à gauche print(tab) return tab # Fin du programme