Програмски преводиоци 1/К1 2017 — разлика између измена
Пређи на навигацију
Пређи на претрагу
м (\leq -> \geq) |
м (→Rešenje) |
||
| Ред 164: | Ред 164: | ||
|- | |- | ||
! 3 | ! 3 | ||
| 4, 5 | | 4, 5, 8 | ||
|- | |- | ||
! 4 | ! 4 | ||
| 4, 5 | | 4, 5, 8 | ||
|- | |- | ||
! 5 | ! 5 | ||
| Ред 193: | Ред 193: | ||
| 3 | | 3 | ||
| 3 | | 3 | ||
| 4, 5 | | 4, 5, 8 | ||
| | | | ||
| 0 | | 0 | ||
| Ред 200: | Ред 200: | ||
| | | | ||
| | | | ||
| 4, 5 | | 4, 5, 8 | ||
| | | | ||
| 0 | | 0 | ||
|- | |- | ||
! 4, 5 | ! 4, 5, 8 | ||
| | | | ||
| | | | ||
| 4, 5 | | 4, 5, 8 | ||
| 6 | | 6 | ||
| | | 1 | ||
|- | |- | ||
! 6 | ! 6 | ||
| Ред 253: | Ред 253: | ||
| C | | C | ||
| D | | D | ||
| | | 1 | ||
|- | |- | ||
! D | ! D | ||
Верзија на датум 29. октобар 2022. у 15:38
Prvi kolokvijum 2017. godine održan je 28. oktobra i trajao je dva sata. Radna verzija postavke roka je dostupna sa stranice predmeta (arhiva).
1. zadatak
Postavka
Projektovati potisni automat koji prepoznaje sledeći skup sekvenci:
Iz zadatog skupa izabrati jednu sekvencu dužine veće od tri i prikazati proces njenog prepoznavanja.
Rešenje
| a | b | c | ─┤ | |
|---|---|---|---|---|
| ∇ |
|
REJECT | REJECT | REJECT |
| A |
|
|
|
ACCEPT |
| B |
|
|
|
REJECT |
| a | b | c | ─┤ | |
|---|---|---|---|---|
| A | REJECT | ADVANCE | REJECT | ACCEPT |
| B | REJECT | ADVANCE |
|
REJECT |
| a | b | c | ─┤ | |
|---|---|---|---|---|
| A | REJECT | REJECT | REJECT | ACCEPT |
| B | REJECT | REJECT |
|
REJECT |
Rad ovog automata možemo prikazati na sekvenci aabbbc.
| Stek | Sekvenca | Stanje | Operacije |
|---|---|---|---|
| ∇ | aabbbc─┤ | 1 | PUSH(A), ADVANCE |
| ∇A | abbbc─┤ | 1 | PUSH(B), ADVANCE |
| ∇AB | bbbc─┤ | 1 | ADVANCE, STATE(S2) |
| ∇AB | bbc─┤ | 2 | ADVANCE |
| ∇AB | bc─┤ | 2 | ADVANCE |
| ∇AB | c─┤ | 2 | RETAIN, STATE(S3) |
| ∇AB | c─┤ | 3 | POP, ADVANCE |
| ∇A | ─┤ | 3 | ACCEPT |
2. zadatak
Postavka
- Direktno na zadatom sintaksnom stablu jednog regularnog izraza naznačiti poništivost, i funkcije prva i poslednja pozicija.
- Nacrtati tabelu sa vrednostima funkcije sledeća pozicija.
- Na osnovu zadatog stabla i rezultata pod a) odrediti konačni automat. Obavezno navesti postupak. Nije potrebna minimizacija.
Rešenje
| Pozicija | Sledeća pozicija |
|---|---|
| 1 | 3 |
| 2 | 3 |
| 3 | 4, 5, 8 |
| 4 | 4, 5, 8 |
| 5 | 6 |
| 6 | 7, 8 |
| 7 | 7, 8 |
| 8 | - |
| + | - | d | . | Prihvata | |
|---|---|---|---|---|---|
| 1, 2, 3 | 3 | 3 | 4, 5, 8 | 0 | |
| 3 | 4, 5, 8 | 0 | |||
| 4, 5, 8 | 4, 5, 8 | 6 | 1 | ||
| 6 | 7, 8 | 0 | |||
| 7, 8 | 7, 8 | 1 |
| + | - | d | . | Prihvata | |
|---|---|---|---|---|---|
| A | B | B | C | 0 | |
| B | C | 0 | |||
| C | C | D | 1 | ||
| D | E | 0 | |||
| E | E | 1 |
3. zadatak
Postavka
- Da li su dati automati ekvivalentni? Obavezno prikazati postupak.
- Konvertovati zadati nedeterministički automat u deterministički. Obavezno prikazati postupak. Nije potrebna minimizacija.
| 0 | 1 | 2 | Prihvata | |
|---|---|---|---|---|
| → Ax | Ax | Ax | Bx | 0 |
| Bx | Bx | Ax | Bx | 1 |
| 0 | 1 | 2 | Prihvata | |
|---|---|---|---|---|
| → Az | Cz | Az | Bz | 0 |
| Bz | Bz | Az | Az | 1 |
| Cz | Cz | Az | Bz | 0 |
Rešenje
| 0 | 1 | 2 | |
|---|---|---|---|
| Ax, Az | Ax, Cz | Ax, Az | Bx, Bz |
| Ax, Cz | Ax, Cz | Ax, Az | Bx, Bz |
| Bx, Bz | Bx, Bz | Ax, Az | Bz, Az |
Zbog toga što stanja Bz i Az nisu kompatibilna, ova dva automata nisu ekvivalentna.
| + | - | d | . | Prihvata | |
|---|---|---|---|---|---|
| → 1, 2, 4, 7, 8, 9 | 3, 8, 9 | 5, 8, 9 | 9, 10, 11, 12, 17, 18, 19 | 0 | |
| 3, 8, 9 | 9, 10, 11, 12, 17, 18, 19 | 0 | |||
| 5, 8, 9 | 9, 10, 11, 12, 17, 18, 19 | 0 | |||
| 9, 10, 11, 12, 17, 18, 19 | 9, 10, 11, 12, 17, 18, 19 | 13, 14 | 1 | ||
| 13, 14 | 14, 15, 16, 19 | 0 | |||
| 14, 15, 16, 19 | 14, 15, 16, 19 | 1 |
| + | - | d | . | Prihvata | |
|---|---|---|---|---|---|
| → A | B | C | D | 0 | |
| B | D | 0 | |||
| C | D | 0 | |||
| D | D | E | 1 | ||
| E | F | 0 | |||
| F | F | 1 |
4. zadatak
Postavka
?????
Rešenje
?????