TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach

FEI archív 2006/2007 => 3. ročník => Topic started by: JBull on 15.05.2007, 20:16:55

Title: PREKLADACE SKUSKA !!!
Post by: JBull on 15.05.2007, 20:16:55
Tak mam otazku pre tych co uz mali dnes skusku z Prekladacov co bolo na skuske? ako boli priklady? najlepsie by bolo mat presne znenie...

diki
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 15.05.2007, 23:25:11
zevraj vsetci dostali Acka....
Title: Re: PREKLADACE SKUSKA !!!
Post by: kerekes on 18.05.2007, 03:02:01
Ja som bol na skuske... a bola taska fest ..... ale ta kto sa ucil ta mal.... :metal:

Ale ne teraz vazne.... vpohode bolo .... trebalo vediet ako sa zapisuje EBNF zatvorkovych vyrazov 3 operatorov aby bola dodrzana ich priorita a asociativita (priority a asociativity boli dane... len EBNF trebalo napisat)

Noa dalej bolo treba syntaktycky analyzator so zotavenim v ccku napisat s tym ze bolo dane pravidlo... ale take kus dlhsie pravidlo .....asi daco jak A->bCD{eF}gH .

No ale vraj sme to mali lahsie bo ze prvy termin ta neviem asi na dalsich toho bude viac treba.... kazdopadne syntakticky a tie zakladne veci okolo LL1, EBNF, BNF.... a tych odstranovani rekurzii a vyclenovani a pod by sa trebalo naucit.

Inak mame seci 95 co sme boli.... to preto ze sme sa ucili....  :thumbsup: .
Title: Re: PREKLADACE SKUSKA !!!
Post by: nighthunter on 18.05.2007, 04:22:11
to preto ze predtermin
Title: Re: PREKLADACE SKUSKA !!!
Post by: nighthunter on 18.05.2007, 05:42:36
netusim kto je kollar
tusim co je predtermin
Title: Re: PREKLADACE SKUSKA !!!
Post by: flashmann on 22.05.2007, 18:09:10
Dnesna skuska bola podstatne narocnejsia ako predtermin.

Otazky z prvej skupiny:

1. Napíšte gramatiku lexikálnych jednotiek pre identifikátory, ktoré majú prvé dva znaky veľké písmená, potom môže nasledovať ľubovoľný počet číslic a ukončené môžu byť jedným apostrofom

2. napíšte, do akej konfigurácie sa dostane automat pri konfigurácii
a { -gulicka- b | a }, ak na vstup pride znak b

3. napíšte gramatiku v EBNF pre zátvorkové výrazy a operácie +, - , *, /, pričom + a – neasociujú, * asociuje doľava a / doprava a priorita je takáto:
   p(*) > p (/) > p(+) = p(-)

4. nakreslite syntakticky strom pre vyraz 10 – 3 * 4 * (3 / 2 – 7), pricom gramatika je z prikladu 3

5. napiste syntakticky analyzator so zotavenim pre A -> X [aY] {Z}, pouzite procedury check a error

-- vela stastia pri dalsich terminoch, dnes bohuzial neurobili vsetci
Title: Re: PREKLADACE SKUSKA !!!
Post by: Emon on 22.05.2007, 18:36:31
Druhá skupina mala:

1. Napíšte gramatiku lexikálnych jednotiek pre identifikátory, ktoré majú prvý znak "$" alebo veľké písmeno, potom môže nasledovať ľubovoľný nenulový počet číslic a malých písmen

2.Napíšte, do akej konfigurácie sa dostane automat pri konfigurácii
 -gulicka- a {b | c }, ak na vstup pride znak a

3. napíšte gramatiku v EBNF pre zátvorkové výrazy a operácie +, - , *, /, pričom + a – asociujú do prava, * neasociuje  a / dolava a priorita je takáto:
   p(+)= p(-) > p(*) > p(/)

4. Napíšte prefixnú a postfixnú formu výrazu a+b+c*d+e/f pre gramatiku z príkladu 3

5.napiste syntakticky analyzator so zotavenim pre A -> aB {bC} (c|F) - (cca už nepamätám presne), pouzite procedury check a error
Title: Re: PREKLADACE SKUSKA !!!
Post by: geasy on 23.05.2007, 17:39:10
dalo sa opisovat?
Title: Re: PREKLADACE SKUSKA !!!
Post by: smejooo on 24.05.2007, 16:58:28
Ja som bol na skuske... a bola taska fest ..... ale ta kto sa ucil ta mal.... :metal:

Ale ne teraz vazne.... vpohode bolo .... trebalo vediet ako sa zapisuje EBNF zatvorkovych vyrazov 3 operatorov aby bola dodrzana ich priorita a asociativita (priority a asociativity boli dane... len EBNF trebalo napisat)

Noa dalej bolo treba syntaktycky analyzator so zotavenim v ccku napisat s tym ze bolo dane pravidlo... ale take kus dlhsie pravidlo .....asi daco jak A->bCD{eF}gH .

No ale vraj sme to mali lahsie bo ze prvy termin ta neviem asi na dalsich toho bude viac treba.... kazdopadne syntakticky a tie zakladne veci okolo LL1, EBNF, BNF.... a tych odstranovani rekurzii a vyclenovani a pod by sa trebalo naucit.

Inak mame seci 95 co sme boli.... to preto ze sme sa ucili....  :thumbsup: .
vtipne od niekoho kto sa uci na skusku 13 dni :D
Title: Re: PREKLADACE SKUSKA !!!
Post by: jerry on 25.05.2007, 07:01:59
pravda, pravda
Title: Re: PREKLADACE SKUSKA !!!
Post by: gkar on 28.05.2007, 17:09:03
nemate dakto tie veci vypracovane ?
Title: Re: PREKLADACE SKUSKA !!!
Post by: kissk on 31.05.2007, 03:07:59
z čoho sa učiť na skúšku z prekladačov?
Title: Re: PREKLADACE SKUSKA !!!
Post by: unicorn on 02.06.2007, 20:26:19


2.Napíšte, do akej konfigurácie sa dostane automat pri konfigurácii
 -gulicka- a {b | c }, ak na vstup pride znak a

nechapem o co ide v tychto prikladoch s tou gulickou, vie mi to niekto vysvetlit?
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 02.06.2007, 21:54:18
nechapem o co ide v tychto prikladoch s tou gulickou, vie mi to niekto vysvetlit?
Gulicka je miesto, kde sa automat momentalne nachadza.
T.z. riesenie je
a -gulicka- { b|c}
Asi   :lb:
Title: Re: PREKLADACE SKUSKA !!!
Post by: unicorn on 02.06.2007, 22:06:44
diky, a tie prefixne a postfixne formy vyrazov su co?

uz som na to prisiel, nevermind
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 03.06.2007, 00:51:31
JJ, ale tie zatvorky tam asi netreba, vid
http://hornad.fei.tuke.sk/predmety/prekl/prekl.php?co=cv3
Title: Re: PREKLADACE SKUSKA !!!
Post by: kissk on 03.06.2007, 06:09:07
tie prefixne a postfixne formy vyrazov su co?

pri postfixnom forme platí:
v infixnom forme: (a+b)
postfix: ab+
prefix: +ab
Teda ak máme infix: (1+2)*3 < -8/4
a priorita a asociativita je tak, ako na civceni: http://hornad.fei.tuke.sk/predmety/prekl/prekl.php?co=cv3
v prvom kroku: (1+2)*3 < 8 -un /4
dalej: (1+2)3* < 8 -un 4 /
dalej: (1 2+)3* < 8 -un 4 /
a vysledok: 1 2 + 3 * 8 -un 4 / <
a prefixny tvar funguje naopak....
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 04.06.2007, 16:25:51
nechapem o co ide v tychto prikladoch s tou gulickou, vie mi to niekto vysvetlit?
Gulicka je miesto, kde sa automat momentalne nachadza.
T.z. riesenie je
a -gulicka- { b|c}
Asi   :lb:


asi tomu nie celkom rozumiem. kde sa da o tom najst nieco viac? termin sa uz blizi....
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 04.06.2007, 17:13:25
nechapem o co ide v tychto prikladoch s tou gulickou, vie mi to niekto vysvetlit?
Gulicka je miesto, kde sa automat momentalne nachadza.
T.z. riesenie je
a -gulicka- { b|c}
Asi   :lb:


asi tomu nie celkom rozumiem. kde sa da o tom najst nieco viac? termin sa uz blizi....
ach jaj sak na tom ani nie je co vysvetlovat:) gulicka znamena kde sa momentalne nachadza automat .a{b|c}, ak na jeho vstup pride a tak automat caka na prichod b alebo c takze sa gulicka postunie za a takto: a. {b|c} ci nie???:) mna by skor zaujimalo co sa stane ak automat je v stave a{gulicka b|a} a pride b  dostane sa do: a { b|a gulicka} alebo a b { b|a gulicka} ??
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 04.06.2007, 17:35:58
nechapem o co ide v tychto prikladoch s tou gulickou, vie mi to niekto vysvetlit?
Gulicka je miesto, kde sa automat momentalne nachadza.
T.z. riesenie je
a -gulicka- { b|c}
Asi   :lb:


asi tomu nie celkom rozumiem. kde sa da o tom najst nieco viac? termin sa uz blizi....
ach jaj sak na tom ani nie je co vysvetlovat:) gulicka znamena kde sa momentalne nachadza automat .a{b|c}, ak na jeho vstup pride a tak automat caka na prichod b alebo c takze sa gulicka postunie za a takto: a. {b|c} ci nie???:) mna by skor zaujimalo co sa stane ak automat je v stave a{gulicka b|a} a pride b  dostane sa do: a { b|a gulicka} alebo a b { b|a gulicka} ??
Dostane sa do a {b|a gulicka}.Asi.Do toho druheho stavu urcite nie, lebo gramatika sa zmenit nemoze. Ale moze nastat pripad, ze bude viac guliciek. Teda mozno by to malo byt a {  b|a gulicka} gulicka. Alebo nejak inak, som z toho popleteny tiez.
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 04.06.2007, 18:00:25
A nie takto?: a { gulicka b|a} gulicka pretoze este mozu prist dalsie b alebo a ktore musi nacitat, pripadne skoncil ak nepridu. V zosite som daco nasiel, ale ta gulicka bola pisana pred {} asi takto :a gulicka{ b|a} gulicka je medzi tymi dvoma zapismi rozdiel??
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 04.06.2007, 18:17:30
no ved prave, neviem ako to ma byt,ci gulicka pred {} alebo vo vnutri{} za b|a alebo aj v{} aj za {}
Title: Re: PREKLADACE SKUSKA !!!
Post by: junimond on 04.06.2007, 21:15:05
moze sa automat nachadzat naraz vo viacerych stavoch? podla mna tam treba znazornit, ze znova automat ocakava b|a, len ako to napisat? mozno sa nic nezmeni a znova to bude a{gulicka b|a} Neda sa to nahodou najst v Kollarovych skriptach?
Title: Re: PREKLADACE SKUSKA !!!
Post by: Stanley on 04.06.2007, 22:20:16
Co je to preboha "Gramatika lexikalnych jednotiek"? V skriptach som nic take nenasiel... :lb:
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 04.06.2007, 23:52:34
Co je to preboha "Gramatika lexikalnych jednotiek"? V skriptach som nic take nenasiel... :lb:

.....ktoré majú prvé dva znaky veľké písmená, potom môže nasledovať ľubovoľný počet číslic a ukončené môžu byť jedným apostrofom

nema byt riesenie taketo:

G -> ("A"|...|"Z") ("A"|...|"Z"){"0"..."9"}[']

?
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 05.06.2007, 00:05:17
jj tak ako pises
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 05.06.2007, 02:05:27
akurat ze cislice su od 0 po 9 nie od 1 po 9 :))
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 05.06.2007, 02:08:09
akurat ze cislice su od 0 po 9 nie od 1 po 9 :))

jo mas  pravdu :D, uz som zmenil. dikes
Title: Re: PREKLADACE SKUSKA !!!
Post by: tosen on 05.06.2007, 02:33:04
Vie niekto nakodit tie syntakticke co maly na minulom termine?
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 05.06.2007, 04:35:06
Vie niekto nakodit tie syntakticke co maly na minulom termine?
ano  ;D
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 05.06.2007, 17:30:48
takze dnesny termin bol teda riadne tazky.....otazky uplne ine ako na predoslych terminoch, akurat syntakticky analyzator ostal. kto nemal ten asi nepsravil, kedze ostatne otazky boli horsie...ja som bol v prvej varke a opisovat sa nedalo vobec...
Title: Re: PREKLADACE SKUSKA !!!
Post by: Username on 05.06.2007, 17:32:24
z coho sa ucit?!?!?!????????
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 05.06.2007, 17:44:56
no jedine zo skript, a zameraj sa najma na priklady a zdrojaky zo zadania. teoria nebola ziadna..
Title: Re: PREKLADACE SKUSKA !!!
Post by: styrioci on 05.06.2007, 17:46:42
a neda sa nic pouzivat na skuske?
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 05.06.2007, 18:10:30
Ty brdo, ja len potvrdim, ze ten dnesny termin bol OMFG. Otázky čo som mal ja:
1) Na základe def. rozšírených reg.výrazov definujte jazyk pre nekonečné reťazce ab, abab, ...
Prázdny reťazec nepatrí do jazyka. Nakreslite prechodový diagram.
2) Nakreslite vzťah medzi procedúrou A a procedúrou B...Tento príklad si nepamätám, viem,že niečo s aktivačným zoznamom a s poklesom úrovne L o 2.
3) Upravte bezkontext gramatiku
   A-> abC | a{B} na LL(1). Pre upravenu gramatiku spravit syntakticky analyzator pomocou procedur Check a Error.
4)Rezimy semantickej analyzy vymenovat a popisat. Tabulka pre semanticku analyzu - vymenovat polozky a popisat.

Takze ako hovorim, brutus. Ked clovek v 3. priklade nevedel upravit gramatiku, tak nespravil ani syntakticky analyzator.
Ale nebolo az tak vela ludi, co neurobilo... Mozno max.10
Title: Re: PREKLADACE SKUSKA !!!
Post by: Username on 05.06.2007, 18:58:16
tak po prvom pohlade mi to pripada este horsie ako hudakoviny

pokial viem, dnesny termin uz bol s 50 ludmi. Dalo sa opisovat? radit? kto bol na dozore? ako to prebieha?
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 05.06.2007, 19:05:37
podla mna nespravilo viac ako 10ludi...v prvej skupime (prvych 30 ludi)sa opisovat nedalo vobec, jednak sa stale pozeral (bol tam len kollar)a aj casu bolo velmi malo, len 30min.
Title: Re: PREKLADACE SKUSKA !!!
Post by: uchvat on 05.06.2007, 20:33:07
Spravilo viac tipla by som ze asi 20 az 25 preslo ale  netusim .... 
Title: Re: PREKLADACE SKUSKA !!!
Post by: Skywalker on 05.06.2007, 22:31:07
len potvrdzujem...predosle terminy boli prechod ruzovou zahradou oproti tomu, co bolo dnes...aspon chlovek vedel ake typy uloh si ma prepocitat a pozriet...ale dnes to bol hardcore...prisiel som, videl som, odisiel som.. FX a tom si myslim ze som tym veciam rozumel co predtym boli na terminoch...taze asi tak...a neurobili ovela viac ludi ako len 10.
Title: Re: PREKLADACE SKUSKA !!!
Post by: sandman on 06.06.2007, 01:56:42
tha ja som mal lahsiu skupinu a mal som taketo otazky:

1)
A -> c["*"|"-"A] kde c je cele cislo prepiste toto pravidlo aby vyhovovalo EBNF aby bolo mozne vygenerovat: 5*4-1            a    5*4-1*3
potom napisat hodnoty ake vyjdu po uskutocneni tych prikladov
a napisat postfixne formy 5*4-1            a    5*4-1*3

2) definujte do ... while  v interpretacnom jazyku, pouzite label, jump nepodmieney skok a falsejump ako podmieneny skok,

3) napisat typovu kontrolu binarneho monoch.....keho(abo daco take) operatora (plus v kruzku) . a este daco napamatam. a napisat aky bude vysledny operand

4) X -> A[B|C] E  dane su aj: H(A),H(B),H(C),H(D)
napsiat syntakticky analyzator s pouzitim fcii error, check.
vysvetlic co su tie H a aky maju vyznam

ak som daco zabudol pripiste.
Title: Re: PREKLADACE SKUSKA !!!
Post by: Username on 06.06.2007, 02:42:25
ludia, prosim, vyrieste tie otazky co boli teraz na termine a podelte sa o to.... ja by som to spravil aj sam, ale neviem odkial sa to naucit robit... ved ja mam pocit akoby zabudli ku tomuto urobit cvicenie :D
Title: Re: PREKLADACE SKUSKA !!!
Post by: bodik on 06.06.2007, 02:51:00
nechcem byt zly prorok, ale vravel, ze zbytocne si to opisujeme. vraj nabuduce budu ine otazky a este dodal, ze ved je z coho vyberat...
Title: Re: PREKLADACE SKUSKA !!!
Post by: uchvat on 06.06.2007, 04:15:34
neje to az tak zbytocne lebo to aspon vediet budes aspon to ale pravda je ze ten tahak co je nestaci a ta kniha co mam je pisana pre mna cinsky tak tiez neviem ako sa to naucim



K tomu 3 prikladu

Trebalo napisat typovu kontrolu monomorfnej binarnej operacia e1 (+) e2 [tie zatvorky su akoze kruzok]    .
Podotazka k tomu bola > Aky typ je vysledna operacia a aku hodnotu nadobudne pri chybe(aspon sa mi zda tou hodnotou som si nie celkom ista)
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 06.06.2007, 14:22:14
No tak napíšem, ako som riešil ja svoje úlohy, ak to niekomu pomôže. Znenie je o stranu späť
1.
A -> B{B}
B -> ab
2. nemám šajn
3.  A-> abC | a{B} treba upraviť. Inak nie som si istý tou časťou bC, možno to bolo cB,ale to je vlastne jedno. Aby to bola gramatika pre jazyk LL(1), musím sa vedieť rozhodnúť podľa najlavejšieho terminálneho symbola. Čiže upravená gramatika:
A -> a (bC | {B})
Syntaktický analyzátor pre toto pravidlo:
Code: [Select]
void A(K)
{
  if (symbol == a) getsymbol(); else error(0, b|H(B)|K);

  check(1,b|H(B)|K);

  switch(symbol)
  { 
    case b: getsymbol(); if (symbol & H(C)) C(K); else error(2,K);
    case H(B): while(symbol & H(B))
                   {
                       B(H(B)|K);
                       check(H(B)|K);
                   }
  }
}

4. režimy sémant.analýzy - analýza dekl., analýza mien, analýza tela - popis si nájdite v skriptách
    tabuľka sémant. an. - Tabuľka symbolov - popis detto

Ak mám niekde chybu, napíšte, opravím.
Title: Re: PREKLADACE SKUSKA !!!
Post by: Username on 08.06.2007, 04:10:00
tak podme zaradom...

podla mna automat a{-gulicka-b|a}, kt. dostane na vstup b, sa dostane do stavu a{gulicka b | gulicka a} gulicka, len do a{b|gulicka a} sa dostat nemoze, ved mozu nasledovat 4 bcka, al. moze aj skoncit.. mozno najlogickejsie by to bolo este a{b gulicka|a}, no to sa mi zda najmenej... mam v tom gulas...

nerozumiem celkom postfixu a prefixu
ked by som mal 1+2*3\4&5<6 a p(*) < p(\) = p(+) < p(&) = p(<)
prefix:
1+2*3\4&(<56) - tu to beriem tak, ze ked som operator presunul, tak my vznikol akoby vyraz (<56)
1+2*3\(&<456) - tu uz (&<456)... ked sa priority rovnaju, nevadi ze idem aj tak po jednom kroku/operatore? je spravne aj (<&456) ?
(+12)*3\(&<456)
(+12)*(\3&<456)
*+12\3&<456

postifx pre 1+2*3\4&5<6, p(*) < p(\) = p(+) < p(&) = p(<)
1+2*3\4&(56<)
1+2*3\(456<&)
(12+)*3\(456<&)
(12+)*(3456<&\)
12+3456<&\*

potom
A -> c["*"|"-"A] kde c je cele cislo prepiste toto pravidlo aby vyhovovalo EBNF aby bolo mozne vygenerovat: 5*4-1 a 5*4-1*3 potom napisat hodnoty ake vyjdu po uskutocneni tych prikladov a napisat postfixne formy 5*4-1 a 5*4-1*3
je spravne A-> B[("*"|"-") A], B->"0"|...|"9" ?  postfix : 54*1-; 54*13*-, alebo 541-*3* alebo 541-3**; prefix: -*541; -*54*13 alebo ...???

Syntaktický analyzátor pre A -> a (bC | {B}):
void A(K)
{
 //nema tu byt check(0,a|b|H(B)|K); ? ??????
  if (symbol == a) getsymbol(); else error(0, b|H(B)|K);

  check(1,b|H(B)|K);

  switch(symbol)
  { 
    case b: getsymbol(); if (symbol & H(C)) C(K); else error(2,K);
    case H(B): while(symbol & H(B))
                   {
                       B(H(B)|K);
                       check(H(B)|K);
                   }
  }
}

ake ine priklady este mozu byt?
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 08.06.2007, 04:26:25
*Ten check tam urcite nema byt, check sa dava(okrem ineho) pred miesta rozhodovania, cize while - zatvorky { }  a switch - zatvorky ( | ) . Neviem ci aj pred if - [ ], ale asi nie, ale preco nie, tak to neviem :)
*V tych gulickach mas gulas jak svina :D Najlepsie je nakreslit ten prechodovy diagram, co sa kreslil na prednaske, z toho sa da napisat tvar, ktory by ti IMO skusajuci uznal...
*V tych prefixoch a postfixoch tiez gulas, nechce sa mi to teda lustit, on dava vacsinou jednoduchsie priklady, treba len chapat princip. Najlepsie je ak si spravis syntakticky strom vyrazu a z toho odvodis prefix alebo postfix a na ostatne kasli.
*Najlepsia otazka nakoniec: ake ine priklady mozu byt? Hocijake! V tom je "krasa" tohoto predmetu...
Title: Re: PREKLADACE SKUSKA !!!
Post by: Username on 08.06.2007, 15:31:19
pomohlo by mi viac keby si mi napisal ako to je spravne :P
Title: Re: PREKLADACE SKUSKA !!!
Post by: Marek8 on 08.06.2007, 16:59:44
Tak ten gulickovy priklad podla mna a {b|a gulicka}.
Tie prefixy a postfixy - chyba ti tam asociativnost.
Title: Re: PREKLADACE SKUSKA !!!
Post by: sunic on 12.06.2007, 19:25:10
Napisem aspon priblizne co bolo dnes :
1) A-->AXB | BX | prazdny retazec .  a) Urobit prechodovy diagram b) spravit to v EBNF(bez prazdneho retazca) a znova diagram
2) trebalo spravit gramatiku pre postupnost prikazov PP  oddelenych ciarakou ( asi takto nejako A->P{ , P}) a k nej syntakticky so zotavenim
3) urobit nejaku EBNF pre
     a) ifnot E then SF else ST
     b) ifnot E then SF
   A este urobit ten ifnot pomocou virt instrukcii jump, falsejump
4) nieco s parametrickou polymorfiu f: a x b ->b. A akeho typu vysledok ak f bola nieco take ako f(3,2.5)
Title: Re: PREKLADACE SKUSKA !!!
Post by: abcddd on 13.06.2007, 05:57:24
1.) A->aBCdeF|aBCd
a) napisat preco dana gramatika nie je gramatikou LL1? nakreslit prechodovy diagram.
b) upravit na gramatiku LL1, nakreslit prechodovy diagram. Ake pravidlo ste pouzili?

2.) bola dana funkcia "function F(x : real) : integer". Tato fcia bola definovana v ramci funkcie H, ktora bola volana vo funkcii G. Funkcia F sa volala s parametrom F(1.5+2).. bolo treba napisat nieco s tabulkou symbolov, stav pred vykonanim tela a po vykonani, stavy premennych, atributov.. spominalo sa tam nieco s klauzulou begin.. (zrejme strana 82 v skriptach)

3.) Navrhnite jednym pravidlom deklaraciu premennych Vars ak definicia zacina klucovym slovom var, potom nasleduje nenulovy pocet nazvov premennych, za nimi dvojbodka a nasledovny typ T.
Text je len priblizny.. vyslo nieco take Vars -> "var" id {"," id} ":" T
Bolo treba k tomu zostrojit procedure Vars(k:symset) - syntakticky analyzator aj so zotavenim.

4.)
a) a, b su typove premenne. Ak a=b x b co bude vyslednym typom? K comu dochadza pri tejto operacii?
b) a, b su typove premenne. Ak a=b co bude vyslednym typom? K comu dochadza pri tejto operacii?
Title: Re: PREKLADACE SKUSKA !!!
Post by: JBull on 14.06.2007, 04:15:27
nemoze niekto kto to vie aj poslat odpovede ne tie otazky...a z coho sa vsetci ucite na skusky? niesu nejake vyriesene priklady?
Title: Re: PREKLADACE SKUSKA !!!
Post by: styrioci on 14.06.2007, 17:40:31
ja som mal tuto skupinu:

Quote
Napisem aspon priblizne co bolo dnes :
1) A-->AXB | BX | prazdny retazec .  a) Urobit prechodovy diagram b) spravit to v EBNF(bez prazdneho retazca) a znova diagram
2) trebalo spravit gramatiku pre postupnost prikazov PP  oddelenych ciarakou ( asi takto nejako A->P{ , P}) a k nej syntakticky so zotavenim
3) urobit nejaku EBNF pre
     a) ifnot E then SF else ST
     b) ifnot E then SF
   A este urobit ten ifnot pomocou virt instrukcii jump, falsejump
4) nieco s parametrickou polymorfiu f: a x b ->b. A akeho typu vysledok ak f bola nieco take ako f(3,2.5)

na skusku som si precital skripta od Kollara - od zaciatku, cez lex analyzator po synt analyzator (stvrtu cast som nestihol - nechcelo sa mi). neda sa povedat, ze som studiu skript venoval nejak extra vela casu (2x som si to zbezne precital, zdrojaky su tam v pascale takze tie som len tak preletel). pozrel som si otazky, ktore tu boli zverejnene a prestudoval si prezentacie k cviceniam. je pravda, ze som na skusku isiel zmiereny s tym, ze nespravim, no v konecnom dosledku sa mi tie moje priklady nezdali az tak tazke, mal som vyriesene vsetky a hadam som aj pisal k veci ked som mal D - 65  :j_grin: zas az take zlozite to nie je, len si treba uvedomit suvislosti. v podstate toto je SOJ, PT a TI v praxi  :j_laugh:
Title: Re: PREKLADACE SKUSKA !!!
Post by: eXtremeq on 16.06.2007, 01:41:37
ja som mal tuto skupinu:

Quote
Napisem aspon priblizne co bolo dnes :
1) A-->AXB | BX | prazdny retazec .  a) Urobit prechodovy diagram b) spravit to v EBNF(bez prazdneho retazca) a znova diagram
2) trebalo spravit gramatiku pre postupnost prikazov PP  oddelenych ciarakou ( asi takto nejako A->P{ , P}) a k nej syntakticky so zotavenim
3) urobit nejaku EBNF pre
     a) ifnot E then SF else ST
     b) ifnot E then SF
   A este urobit ten ifnot pomocou virt instrukcii jump, falsejump
4) nieco s parametrickou polymorfiu f: a x b ->b. A akeho typu vysledok ak f bola nieco take ako f(3,2.5)

na skusku som si precital skripta od Kollara - od zaciatku, cez lex analyzator po synt analyzator (stvrtu cast som nestihol - nechcelo sa mi). neda sa povedat, ze som studiu skript venoval nejak extra vela casu (2x som si to zbezne precital, zdrojaky su tam v pascale takze tie som len tak preletel). pozrel som si otazky, ktore tu boli zverejnene a prestudoval si prezentacie k cviceniam. je pravda, ze som na skusku isiel zmiereny s tym, ze nespravim, no v konecnom dosledku sa mi tie moje priklady nezdali az tak tazke, mal som vyriesene vsetky a hadam som aj pisal k veci ked som mal D - 65  :j_grin: zas az take zlozite to nie je, len si treba uvedomit suvislosti. v podstate toto je SOJ, PT a TI v praxi  :j_laugh:

ako si riesil 3. a 4. priklad?
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 16.06.2007, 21:23:50
K tomu prvemu prikladu A->aBCdeF|aBCd malo pravidlo po uprave vyzerat A->aBCd[eF] a prechodovy diagram sa kresli  pred upravou ako 2 vetvy jedna pre slovo AbCdeF a druha pre aBCd a po uprave bude jedna vetva, ktora konci v stave aBCd, a z toho ide este dalej rovna ciara kde sa to vetvi eF a zase spat do rovnej ciary?
Som to editol po preskumani dalsich informacii:)
Title: Re: PREKLADACE SKUSKA !!!
Post by: styrioci on 16.06.2007, 23:12:04
ako si riesil 3. a 4. priklad?

3. nepamatam presne..pravidla som dal nieco v tom zmysle: (mozno kktina, ale uz ma to netrapi)

a) A -> E[Sf | St]
b) A -> E[Sf]

potom som tam nakreslis vyvojak v zmysle vetvenia: vyhodnoti sa podmienka ak ano tak sa vykona St ak nie vykona sa Sf a pokracuje sa dalej a v tomto duchu som napisal aj tie virtualne instrukcie. nieco v tomto zmysle:

vyhodnotenie vyrazu E;
falsejump (label1);
jump(label2);
label1: Sf; jump(label3);
label2: St; jump(label3);
label3: pokracovanie programu...

nepamatam sa presne, ale nieco take som tam vypotil (mozno to bolo aj dobre  :lol9: )

4. trebalo napisat pre volanie zadanej funkcie - f: a x b ->b , ze akeho typu su skutocne parametre a akeho typu je vysledok ak bola volana ako f(3,2.5).

tak som napisal, ze parameter a je typu int, parameter b je typu float a vysledna hodnota funkcie je typu float. takisto si niesom isty spravnostou. toto ma v prvom momente napadlo.

ako som povedal, skusku som spravil (aj ked som to velmi necakal) a aj ked papier znesie vela tak hadam tam bolo aj cosi k veci  :lol9:
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 17.06.2007, 01:40:18
3.) Navrhnite jednym pravidlom deklaraciu premennych Vars ak definicia zacina klucovym slovom var, potom nasleduje nenulovy pocet nazvov premennych, za nimi dvojbodka a nasledovny typ T.
Text je len priblizny.. vyslo nieco take Vars -> "var" id {"," id} ":" T
Bolo treba k tomu zostrojit procedure Vars(k:symset) - syntakticky analyzator aj so zotavenim.

Ako k tomu zostrojis syntakticky??? ja som z toho jelen kua "var",",",":" budes brat ako neterminaly a id a T ako terminaly? var mozem nacitat do symbolu naraz? if symbol= var then.....?
Title: Re: PREKLADACE SKUSKA !!!
Post by: eXtremeq on 17.06.2007, 05:05:39
K tomu prvemu prikladu A->aBCdeF|aBCd malo pravidlo po uprave vyzerat A->aBCd[eF] a prechodovy diagram sa kresli  pred upravou ako 2 vetvy jedna pre slovo AbCdeF a druha pre aBCd a po uprave bude jedna vetva, ktora konci v stave aBCd, a z toho ide este dalej rovna ciara kde sa to vetvi eF a zase spat do rovnej ciary?
Som to editol po preskumani dalsich informacii:)

toz si si isty ze to mas spravne? :)
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 17.06.2007, 16:02:01
keby som vedel ci to je spravne tak sa na to asi nepytam :P ale chcem sa opytat ci si treba pozriet aj tu 2 cast  knihy Generovanie jazykovych procesorov od Havlice ci nie? ako pozeram tak tam su same blbosti
Title: Re: PREKLADACE SKUSKA !!!
Post by: styrioci on 17.06.2007, 16:38:33
keby som vedel ci to je spravne tak sa na to asi nepytam :P ale chcem sa opytat ci si treba pozriet aj tu 2 cast  knihy Generovanie jazykovych procesorov od Havlice ci nie? ako pozeram tak tam su same blbosti

toto uz je mimo zaberu prekladacov, nie? nebudeme to potrebovat v stvrtaku na havliceho predmet "konstrukcie prekladacov"? alebo tak nejak sa ten predmet vola
Title: Re: PREKLADACE SKUSKA !!!
Post by: UnderTaker on 17.06.2007, 16:40:14
som sa pytal kamosov a ze to uz je konstrukcia prekladacov tak ako ty hovoris:)
Title: Re: PREKLADACE SKUSKA !!!
Post by: pr on 18.06.2007, 17:23:01
1.) A->aBCdeF|aBCd
a) napisat preco dana gramatika nie je gramatikou LL1? nakreslit prechodovy diagram.
b) upravit na gramatiku LL1, nakreslit prechodovy diagram. Ake pravidlo ste pouzili?


ako treba nakreslit prechodovy diagram k tomu?
Title: Re: PREKLADACE SKUSKA !!!
Post by: JBull on 19.06.2007, 19:40:51
tak prekladace sa cim dalej tym viac menia, ale dnes sa mi to podarilo E 55  :ropebanana: :metal:.

Takze teraz ku skuske, Kollar vobec neprisiel, prisiel nejaky typek ale mal hrozne trapne kecy ohladne toho, ze nech radsej odovzdame a nech si zapiseme predmet na dalsi rok atd. Ku otazkam vacsina otazok bola len teoria, jedna skupina nemala ani syntakticky.

Ja som bol v prvej polke kde asi tretina nespravila, cize ten novy typek tiez barz dobre neopravuje.
Title: Re: PREKLADACE SKUSKA !!!
Post by: Stanley on 19.06.2007, 20:07:12
Dnes novy typek co bol sa vola Poruban. Podla toho co som si vsimol to vyzeralo tak, ze opravoval podla sablonky, ktoru mu (zrejme) pripravil Kollar. Otazky:
1. Napisat gramatiku jazyka EBNF pomocou EBNF.
   Upravit dva vyrazy z EBNF na BNF. Islo o to ze pri jednom [daco_neviem_co] trebalo len zrobit ze je to to iste bez zatvoriek alebo prazdny retazec (epsilon),
a druhom ktory bol zas {daco} to prepisat tak aby zmizli tie {}, cize nejaku rekurziu donuka dat.

2. napisat gramatiku EBNF ceckovskeho cyklu do....while, ked B je telo a E je podmienka
   napisat virtualne instrukcie k tomu cyklu

3. Su operacie +,-,* vsetky maju rovnaku prioritu a asociuju sprava a operacia = neasociuje a ma vacsiu prioritu ako ostatne tri. Identifikatory su jedno male pismeno. Treba napisat gramatiku. Potom k vyrazu a+b-c=d*e namalovat syntakticky a derivacny strom a napisat prefixny tvar.
Co reprezentuje syntakticky strom?
-----||------------- derivacny strom?
Ktore z tychto troch  foriem su ekvivalentne?

4. Ako su reprezentovane typove vyrazy?
   Ako je definovana unifikacia a substitucia v parametricky polymorfnom systeme?
Title: Re: PREKLADACE SKUSKA !!!
Post by: mastermind on 19.06.2007, 21:15:09
nahoodu. Poruban je uplne v pohode chlapik. opravoval velmi tolerantne si myslim. kto uz neurobil dnes tak potom neviem
Title: Re: PREKLADACE SKUSKA !!!
Post by: hun10 on 19.06.2007, 22:20:49
Druha skupina bola:

1. Syntakticky so zotavenim pre jazyk LL1: A---->{Db l Ca} kde H(D) a H(C) su zname, "asi" tam este boli este zadane sy ako symbol, getsym ako getsymbol a s K este nieco
urcit vstah medzi FIRST(D) a H(D) - to iste aj pre FIRST(C) a H(C)
2. Nieco s volacim aktivacnym po vykonani begin<2,4> neviem co presne a znazornit aky to bude mat na volaco vplyv (Toto som ani neprecital poriadne ked som videl to begin<2,4> takze take je aj moje podanie zadania)

3. Pre gramatiku : retazec sa zacina "a" a konci "c" medzi nimi je aspon jedno "b"
trebalo urcit prechodovy diagram, urobit konecnostavovy deterministicky  automat a aj pre ten urobit prechodovy diagram

4. Aka je arita(pocet argumentov) instrukcii jump<L> a falsejump<L>, aky je ich typ a navratova hodnota a kolko miesta zaberaju v zasobniku.

Moja pamet je nanic takze nic blizsie uz neviem ak si spomenie niekto na dake dalsie veci pripiste
Co sa tyka opisovania bola prilezitost(prvej skupine opravoval kym sme pisali a nedaval bars pozor) ale nebolo z coho lebo zakazdym su ine priklady.
Opakuje sa len syntakticky so zotavenim
Priklady boli take ze trebalo porozmyslat a podumat suvislosti z inych predmetov(TI, PT)