Analisando propostas

Programação de um autómato de pilha

Publicado em 22 de Junho de 2022 dias na TI e Programação

Sobre este projeto

Aberto

Um autômato de pilha, como N sendo a quantidade de estados, símbolos de alfabeto de entrada e símbolos de alfabetos da pilha de entrada, estado inicial(entre 0 e N - 1), símbolo inicial da pilha, quantidade de estados finais e uma lista de transições contendo estado de partida, estado de chegada, símbolo de entrada, símbolo no topo da pilha e string.
Saída -> uma árvore de descrições instantâneas seguida da palavra "aceita" ou "rejeita".

Contexto Geral do Projeto

Para fins de simplicidade, o símbolo 'e' será utilizado no lugar de epsilon Entrada quantidade de estados - N Quantidade de símbolos do alfabeto de entrada símbolos do alfabeto de entrada Quantidade de símbolos do alfabeto da pilha símbolos do alfabeto da pilha número do estado inicial (entre 0 e N-1) símbolo inicial da pilha Quantidade de estados finais estados finais Quantidade de transições Lista de transições, cada uma contendo número do estado de partida, número do estado de chegada, símbolo de entrada, símbolo do topo da pilha e string a ser escrita na pilha uma string Saída Uma árvore de Descrições Instantâneas (DI) seguida da palavra "aceita" ou "rejeita". Cada DI deve conter o estado atual, o que resta ler da entrada e o conteúdo da pilha. A árvore deve ser esscrita da seguinte forma: todo nó deve ser escrito antecedido do um caractere '(' e sucedido por seus filhos, separados por ponto-e-vírgula e depois o caractere ')'. Por exemplo, a árvore (Aspecto; (Sol; (Humidade; (Elevada; (Não)); (Normal; (Sim)))); (Nuvens; (Sim)); (Chuva; (Vento; (Fraco; (Não)); (Forte; (Sim))))) é a mesa da figura a seguir. Já a da figura a seguir ficaria (q0, 1111, Z0; (q0, 111, 1Z0; (q0, 11, 11Z0 (q0, 1, 111Z0; (q0, e, 1111Z0; (q1, e, 1111Z0)); (q1, 1, 111Z0; (q1, e, 11Z0))); (q1, 11, 11Z0; (q1, 1, 1Z0; (q1, e, Z0; (q2; e; Z0))))); (q1, 111, 1Z0; (q1, 11, Z0; (q2; 11; Z0)))); (q1; 1111; Z0; (q2; 1111; Z0))) Lembrando que nos autômatos do trabalho os estados serão representados por números e cada símbolo, de entrada ou da pilha, só pode ser 1 caractere. Exemplo de entrada e saída (Autômato visto em sala) Entrada: 3 2 0 1 3 0 1 Z 0 Z 1 2 12 0 0 0 Z 0Z 0 0 1 Z 1Z 0 0 0 0 00 0 0 0 1 01 0 0 1 0 10 0 0 1 1 11 0 1 e Z Z 0 1 e 0 0 0 1 e 1 1 1 1 0 0 e 1 1 1 1 e 1 2 e Z Z 1111 Saída: (0, 1111, Z; (0, 111, 1Z; (0, 11, 11Z; (0, 1, 111Z; (0, e, 1111Z; (1, e, 1111Z)); (1, 1, 111Z; (1, e, 11Z))); (1, 11, 11Z; (1, 1, 1Z; (1, e, Z; (2; e; Z))))); (1, 111, 1Z; (1, 11, Z; (2; 11; Z)))); (1; 1111; Z; (2; 1111; Z))) aceita

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Não se aplica
Disponibilidade requerida Conforme necessário
Funções necessárias Desenvolvedor

Prazo de Entrega: Não estabelecido

Habilidades necessárias