Return to Video

01-49 More FSM Encoding

  • 0:00 - 0:05
    Mais uma vez, eu recomendo começar desenhando o FSM.
  • 0:05 - 0:09
    Então, com `a', ou `b', vamos para o estado 2.
  • 0:09 - 0:11
    E podemos terminar aqui, porque isto é opcional.
  • 0:11 - 0:16
    Com `c', ou `d', podemos ir para o estado 3, e terminar aqui.
  • 0:16 - 0:22
    Aqui, no topo, codifiquei os arcos: do estado 1, com `a', para o estado 2,
  • 0:22 - 0:25
    do estado 1, com `b', para o estado 2 também.
  • 0:25 - 0:28
    Do estado 2, com `c', vamos para 3.
  • 0:28 - 0:31
    Do estado 2, com `d', vamos para 3.
  • 0:31 - 0:33
    E os dois estados, 2 e 3, são de aceitação.
  • 0:33 - 0:36
    Aqui abaixo temos 3 casos de teste.
  • 0:36 - 0:39
    "ac", que deve ser aceito,
  • 0:39 - 0:42
    "aX", que não deve ser,
  • 0:42 - 0:47
    e apenas "b", que deve ser ok, porque a partre [c-d] é opcional.
  • 0:47 - 0:48
    Vamos ver.
  • 0:48 - 0:51
    E obtemos exatamente o que esperávamos: true, false, true!
  • 0:51 - 0:57
    Você pode ter pensado em colocar um loop no estado 2, com `c' e com `d',
  • 0:57 - 1:00
    ao invés desta parte aqui do FSM.
  • 1:00 - 1:05
    Mas isso muda o significado para "[a-b][c-d]".
  • 1:05 - 1:11
    Se você tem este loop, "acc" é aceito -- a, c, c -- e não deveria ser.
  • 1:11 -
    Portanto, este loop não é a solução correta.
Cím:
01-49 More FSM Encoding
Leírás:

01-49 Mais Codificação de FSM

more » « less
Video Language:
English
Team:
Udacity
Projekt:
CS262 - Programming Languages
Duration:
01:15
Lucilia Figueiredo hozzáadott egy fordítást

Portuguese subtitles

Felülvizsgálatok