Ybadoo - Soluções em Software Livre
Turmas
2º Semestre de 2026

Uma palavra α é um prefixo de outra palavra β se for possível escrever β como sendo αγ, admitindo-se a possibilidade de γ = ε. Uma palavra α é uma subpalavra de outra palavra β se for possível escrever β como γαδ, admitindo-se a possibilidade de γ ou δ ou ambos serem palavras vazias (ε). Uma palavra α é um sufixo de outra palavra β se for possível escrever β como sendo γα, admitindo-se a possibilidade de γ = ε. Analise as seguintes afirmativas sobre prefixos, subpalavras e sufixos.

  1. As palavras arredondamento e complementares possuem a mesma quantidade de subpalavras.
  2. As palavras apreensibilidade e desenvolvimento possuem a mesma quantidade de prefixos.
  3. As palavras assembler e paradigma possuem a mesma quantidade de subpalavras.
  4. As palavras microarquitetura e manutenibilidade possuem a mesma quantidade de sufixos.

A análise permite concluir que:

a. Apenas as afirmativas I e II estão corretas.

b. Apenas as afirmativas I e III estão corretas.

c. Apenas as afirmativas II e III estão corretas.

d. Apenas as afirmativas II e IV estão corretas.

e. Apenas as afirmativas III e IV estão corretas.

Em geral, a aplicação do método da construção de subconjuntos produz autômatos com estados redundantes, ou seja, estados que poderiam ser combinados em um único estado sem alterar a linguagem que é reconhecida. Analise as afirmativas sobre os estados redundantes do autômato finito determinístico apresentado a seguir.

M = ({a, b, c}, {A, B, C, D, E}, δ, A, {B, D, E})

Grafo com a função de transição de M
Autômato Finito Determinístico
  1. Os estados B e D são equivalentes.
  2. Os estados B e E são equivalentes.
  3. Os estados A e C são equivalentes.
  4. Os estados D e E são equivalentes.

A análise permite concluir que:

a. Apenas as afirmativas I e II estão corretas.

b. Apenas as afirmativas I e III estão corretas.

c. Apenas as afirmativas II e III estão corretas.

d. Apenas as afirmativas II e IV estão corretas.

e. Apenas as afirmativas III e IV estão corretas.

Apesar do elevado interesse prático que recai sobre os autômatos finitos determinísticos, uma vez que eles servem como base para a construção de programas extremamente eficientes, do ponto de vista teórico, há também um interesse muito grande pelos autômatos finitos não-determinísticos, devido à maior facilidade com que eles permitem a demonstração de certos teoremas. Do ponto de vista prático, os autômatos finitos não-determinísticos são, muitas vezes, mais intuitivos do que os correspondentes autômatos finitos determinísticos, o que os torna, geralmente, mais adequados para a análise e especificação de linguagens regulares. Desenvolva um autômato finito não-determinístico sobre o alfabeto Σ = {a, b, c, d} que reconheça a linguagem L = {w | w possui cbd ou dac ou dad como prefixo, acda ou adcd ou daab como subpalavra e abcd ou cddb ou dadb como sufixo}.

Autômatos finitos não-determinísticos que apresentam transições em vazio são aqueles que admitem transições de um estado para outro com ε, além das transições normais, que utilizam os símbolos do alfabeto de entrada. Transições em vazio podem ser executadas sem que seja necessário consultar o símbolo corrente da fita de entrada, e sua execução nem sequer causa o deslocamento do cursor de leitura. Desenvolva um autômato finito com movimentos vazios sobre o alfabeto Σ = {1, 2, 3, 4} que reconheça a linguagem L = {w | w possui 1214 ou 2443 ou 3424 como prefixo, 141 ou 3114 ou 4324 como subpalavra e 1323 ou 243 ou 411 como sufixo}.

Como alternativa para a representação dos conjuntos regulares, visando obter maior concisão e facilidade de manipulação, Kleene desenvolveu, na década de 1950, a notação das expressões regulares. Analise a expressão regular sobre o alfabeto {a, b} abaixo:

(a+b)*a+(a+b)*b

A expressão pode ser simplificada como:

a. (a+b)*

b. a*b*

c. ab+ba

d. (a+b)*(a+b)(a+b)*

e. (a+b)*(a+b)

Na Teoria da Computação, um autômato finito não-determinístico é uma máquina de estados finita, em que, para cada par de estado e símbolo de entrada podem haver vários próximos estados possíveis. Essa característica o distingue do autômato finito determinístico, em que o próximo estado possível é univocamente determinado. Autômatos finitos não-determinísticos reconhecem exatamente o conjunto de linguagens regulares que são, dentre outras coisas, úteis para a realização da análise léxica e reconhecimento de padrões. Qual expressão regular é equivalente ao autômato finito não-determinístico apresentado a seguir?

M = ({a, b}, {q0, q1, q2, q3, q4}, δ, q0, {q4})

Grafo com a função de transição de M
Autômato Finito Não-Determinístico

a. abb+a+

b. ab*a*

c. abb*a+

d. ab+a+

e. a(bb)*a*

Um sistema de estados finitos é um modelo matemático de sistemas com entradas e saídas discretas. Pode assumir um número finito e pré-definido de estados. Cada estado resume somente as informações do passado necessárias para determinar as ações para a próxima entrada. Desenvolva um autômato finito determinístico sobre o alfabeto Σ = {a, b, c, d} que reconheça a linguagem L = {w | w possui aba ou cac como prefixo, acd ou cad como subpalavra e cdb ou dca como sufixo}.

O método da construção de subconjuntos é um procedimento sistemático que converte um autômato finito com movimentos vazios num autômato finito determinístico. O princípio associado a esse método é criar novos estados, no autômato finito determinístico, que estejam associados a todas as possibilidades de estados originais em um dado momento da análise da sentença no processo de reconhecimento. Para cada estado original, essas possibilidades incluem o estado do autômato finito com movimentos vazios e todos os estados que podem ser atingidos a partir dele com transições pela string vazia. Converta, usando o método da construção de subconjuntos, o autômato finito não-determinístico com movimentos vazios apresentado a seguir para um autômato finito determinístico.

M = ({a, b}, {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, q12, q13, q14, q15, q16, q17}, δ, q0, {q17})

Grafo com a função de transição de M
Autômato Finito com Movimentos Vazios