Leia com atenção as instruções abaixo.
Coloque os arquivos da atividade na pasta atividades/atividade03 no seu repositório. Use a sintaxe da linguagem Markdown para a questão 01 em um arquivo
questao01.md, enquanto na questão 02 o arquivo Lex deve ser questao02.l.
Valor: 2,0 pontos na 1ª Nota.
Data da Entrega Limite: 05/06/2021
Questão 01 - 1,0 Ponto
-
Use a construção de Thompson para converter a expressão regular (aa|b)*(a|bb)* em um NFA. Aqui pessoal acho que explicação na aula ficou bem precisa, portanto quero que façam
com os detalhes de cada construção intermediária.
-
Converta o NFA anterior em um DFA usando a construção de subconjuntos. Como no próprio livro texto a explicação está informal, vocês podem ter liberdade ao explicar a resolução que apresentarem
aqui, não precisa ser exatamente como fiz em aula, desde que adote os mesmos principios. Tente fazer e descreva aqui na forma mais conveniente como tentou resolver a questão.
Em suma, não vale colocar apenas o resultado final do DFA. Também relembrando para não inserir fotografias de cadernos, utilize ferramentas digitais para facilitar a compreensão.
Questão 02 - 1,0 Ponto
Escreva um arquivo de entrada Lex para produzir um programa que conte caracteres, palavras e linhas em um arquivo de texto e produza um relatório. Defina uma palavra como qualquer sequência de
letras e/ou dígitos, sem pontuação ou espaços. Pontuação e espaços não contam como palavras.