Leia com atenção as instruções abaixo.
Formato da Entrega:
-
Arquivo no formato PDF.
-
Deve ser enviado através do Slack, no chat privado com o professor. Qualquer outro envio será desconsiderado.
-
O arquivo deve ser orientação formato retrato, não paisagem.
-
Você pode resolver no caderno e digitalizar usando o Google Drive ou colocar em um documento do Word ou LibreOffice, gerando o PDF. O tamanho do arquivo deve ficar abaixo de 10 MB.
-
No início do arquivo, deixe bem claro o título com: nome da atividade, seu nome e sua matrícula.
Valor: 4,0 pontos na 1ª Nota.
Data da Entrega Limite: 10/08/2020
Questão 01 - 1,0 Ponto
Escreva expressões regulares para os conjuntos de caracteres a seguir, ou apresente motivos para que elas não possam
ser escritas:
-
Cadeias de dígitos que representam números pares.
-
Cadeias de dígitos tais que todos os 2's ocorram antes de todos os 9's.
Questão 02 - 1,0 Ponto
Reescreva o pseudocódigo para a implementação do DFA para comentários em C (seção 2.3.3) utilizando o caractere de entrada como
teste do case externo e o estado como teste do case interno. Compare seu pseudocódigo com o do texto. Quando seria preferível
usar essa organização para o código que implementa um DFA?
Questão 03 - 2,0 Pontos
-
Use a construção de Thompson para converter a expressão regular (0|1)*(0(0|1)|e), na qual e representa a cadeia vazia, em um NFA. Quanto mais detalhes você informar da construção, maiores as chances de aproveitar algo da questão. Se colocar apenas o NFA e estiver errado, estará errado.
-
Converta o NFA da parte 1 em um DFA usando a construção de subconjuntos.