Last active
January 11, 2022 21:44
-
-
Save guissalustiano/12d6925abed40c53f44b4fef6a0e2506 to your computer and use it in GitHub Desktop.
Maquina de turing para validar 0^n 1^n | n > 0
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# use in https://turingmachine.io/ | |
input: '0111' # try 1100 | |
blank: ' ' | |
start state: passo2 | |
synonyms: | |
accept: {R: accept} | |
reject: {R: reject} | |
table: | |
passo2: | |
[0, X]: {write: 'X', R: direita} | |
Y: {R: passo2} # continua p/ direita enquanto for Y | |
' ': accept | |
1: reject # esse colocar "accept" aqui ele funciona para o caso certo mas nao para o caso errado | |
direita: | |
[0, X, 1]: {R: direita} # continua p/ direita enquanto n for ' ' | |
[' ', Y]: {L: passo3} # chegou no fim e nao achou 1 | |
passo3: # comeca no 1 a direita | |
1: {write: Y, L: passo4} # achou 1 | |
Y: accept | |
[0, X, ' ']: reject # chegou no fim e nao achou 1 | |
passo4: | |
[1, Y]: {L: passo4} # continua p/ esquerda enquanto n for 0 | |
0: {write: X, R: passo3} | |
X: {R: passo2} | |
' ': reject # chegou no fim e nao achou X | |
accept: | |
reject: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment