Ir ao conteúdo
  • Cadastre-se

[HELP]Autômatos de Pilha


Thubannuflye

Posts recomendados

Como é a entrada?

O um arquivo único deve ler a entrada via console e será capaz de extrair as seguintes informações: 

|1 2 // conjunto de estados do autômato 

|a b c // alfabeto da linguagem 

|Z C // alfabeto da pilha 

|1 a Z > 1 CCZ // funções 

|1 a C > 1 CCC // de 

|1 b Z > 2 Z // transição 

|1 b C > 2 C // do 

|2 c C > 2 - // autômato 

|2 - Z > 2 - // dado 

|# // fim das transições 

|P // modo de aceitação por esvaziamento de pilha 

|- // conjunto de estados finais (CUIDADO! ESTA LINHA SÓ EXISTIRÁ SE A LINHA ANTERIOR FOR 'F'!)

|abcc // cadeia de entrada 

|... // quantidade n de cadeias 

|# // fim do arquivo de entrada 

Cada linha seguirá o padrão: caractere + espaço + ... + caractere + quebra de linha 

Com exceção das cadeias, onde os caracteres não estão separados 

Lembrem-se!

  • o símbolo '-' representa a cadeia vazia.
  • os estados serão representados como números.
Como funciona? Terminada a leitura da entrada, seu trabalho deve montar o autômato usando uma pilha e, de acordo com o modo de aceitação pedido, testar cada cadeia de entrada. Como é a saída? Seu trabalho deve gerar uma saída onde cada linha representa a aceitação/rejeição de cada cadeia, em ordem respectiva à entrada!

|cadeia + *insira a cadeia aqui, sem asteriscos* + aceita por esvaziamento de pilha

|cadeia + *insira a cadeia aqui, sem asteriscos* + rejeitada por esvaziamento de pilha

|...

ou ainda:

|cadeia + *insira a cadeia aqui, sem asteriscos* + aceita por estado final

|cadeia + *insira a cadeia aqui, sem asteriscos* + rejeitada por estado final

|...

 

Exemplos: 

 

> entrada.txt

|0 1 

|a b c 

|Z C 

|0 a Z > 0 CCZ 

|0 a C > 0 CCC 

|0 b Z > 1 Z 

|0 b C > 1 C 

|1 c C > 1 - 

|1 - Z > 1 - 

|# 

|P 

|abcc 

|aabcc 

|#

> saida.txt

|cadeia abcc aceita por esvaziamento de pilha

|cadeia aabcc rejeitada por esvaziamento de pilha 

 

> entrada.txt

|0 1 2 3 4 

|a c 

|Z C 

|0 a Z > 1 CCZ 

|0 a Z > 2 CZ 

|1 a C > 1 CCC 

|1 c C > 3 - 

|2 a C > 2 CC 

|2 c C > 3 - 

|3 c C > 3 - 

|3 - Z > 4 Z 

|# 

|F 

|4 

|aac 

|aacc 

|aacccc 

|#

> saida.txt

|cadeia aac rejeitada por estado final

|cadeia aacc aceita por estado final 

|cadeia aacccc aceita por estado final 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...