• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

Formálne jazyky a preklada?e

Started by mishelka, 16.09.2010, 13:35:34

« predchdzajce - alie »

ursus

skus si napisat gramatiku, lebo ako mas to dobre pre tu gramatiku co tam mas napisanu, ale to neni gramatika zodpovedajuca tvojmu zadaniu, chapes
So this router walks into the doctor's office...
- Doctor, it hurts when IP.

profesionale

A vies mi povedat ako ta gramatika ma vyzerat....lebo akosi som vtedy na prednaske ani na cviku nebol kvoli zdravotnym problemom a nikde o tej gramatike neviem zohnat prezentacie.

ursus

priorita sa robi tak ze "cim nizsie" je funkcia, tym ma vyssiu prioritu, a asociativita sa robi takto
lava: V -> P {"+" P}
prava: V -> P ["+" V]
bez:  V -> P["+" P]

napr pre operator "+"
So this router walks into the doctor's office...
- Doctor, it hurts when IP.

revelc

Asi sa tu uz niekto pytal, ale priorita 1 je vyssia ako priorita 2 ci naopak?
Čo môžeš urobiť dnes odlož na pozajtra a ziskaš deň voľna.

"I'm a man of simple tastes. I enjoy dynamite...and gunpowder...and gasoline! "

black_stone

ked mam napr. T || F && F || T ||F asociaciu dolava a nastavim si ze && ma vyssiu prioritu nez || tak z toho vyrazu najprv vyratam F && F a zvysok ratam dolava ? Cize vysledok bude True ?
A ked mam ten isty vyraz a bez asociativity a s rovnakou prioritou tak sa vyrata len F&&F ? 
Keby vyraz pokracoval dalej a mal by som T || F && F || T ||F && F bez asociativity tak ako by sa to ratalo ?

Makaveli

operator && ma ist zlava priorita 1 a op. || bez asociativnosti a priorita 2 plus tie zatvorky to ma byt takto?

Expr -> term {"&&" term}
Expr -> term [ "||" term ]
Term -> "value" | "(" expr ")"


Ma to byt tak ci daako inak lebo ma uz j... :ohmygod:
Máte pravdu. Jsem blázen. Ale víte co ještě? Je mi to u prdele:P KED NIECO NEVIES TUKE FORUM VYRIESI :)))

Makaveli

Quote from: eminkaa on  08.11.2010, 05:05:30
nemozes mat dve prave strany pre expr, treba ti novu fciu

Expr -> and {"&&" and}
and -> term [ "||" term ]
Term -> "value" | "(" expr ")"    taze takto??

Máte pravdu. Jsem blázen. Ale víte co ještě? Je mi to u prdele:P KED NIECO NEVIES TUKE FORUM VYRIESI :)))

Makaveli

Quote from: eminkaa on  08.11.2010, 05:14:10
no vidis, si ma predbehol :)
taze to je dobre parada mozem sa pohnut dalej  diks :ropebanana:
Máte pravdu. Jsem blázen. Ale víte co ještě? Je mi to u prdele:P KED NIECO NEVIES TUKE FORUM VYRIESI :)))

totaluser

ok
bolo tu povedane ze priorita 1 je najvyssia a 2 je nizsia
teda ak dobre chapem, ze priorita klesa smerom dolu, nemalo by to vyzerat takto?

Expr -> and [ "||" and ]
and -> term { "&&" term }
Term -> "value" | "(" expr ")" 

vdaka ;)

ursus

uz som sa zlakol ze to nejako blbo robim, a ono to inty delim, fijuuu  ap
So this router walks into the doctor's office...
- Doctor, it hurts when IP.

Makaveli

Quote from: totaluser on  08.11.2010, 05:59:15
ok
bolo tu povedane ze priorita 1 je najvyssia a 2 je nizsia
teda ak dobre chapem, ze priorita klesa smerom dolu, nemalo by to vyzerat takto?

Expr -> and [ "||" and ]
and -> term { "&&" term }
Term -> "value" | "(" expr ")" 

vdaka ;)
ja to robim prave naopak ze cim nizsie je v radku tak je vysia priorita tak ako to je ???  :whacko:
Máte pravdu. Jsem blázen. Ale víte co ještě? Je mi to u prdele:P KED NIECO NEVIES TUKE FORUM VYRIESI :)))

totaluser

Quote from: Makaveli on  08.11.2010, 14:18:31
Quote from: totaluser on  08.11.2010, 05:59:15
ok
bolo tu povedane ze priorita 1 je najvyssia a 2 je nizsia
teda ak dobre chapem, ze priorita klesa smerom dolu, nemalo by to vyzerat takto?

Expr -> and [ "||" and ]
and -> term { "&&" term }
Term -> "value" | "(" expr ")" 

vdaka ;)
ja to robim prave naopak ze cim nizsie je v radku tak je vysia priorita tak ako to je ???  :whacko:

moment, dajako sa asi nechapeme
lebo aj ja to robim tak ze cim nizsie je v riadku dany operator, tym ma vyssiu prioritu

kedze || je na vyssiom riadku ako &&, tak && ma vyssiu prioritu ako ||

teda aspon tak som to pochopil ja na cviceni


moze mi to niekto potvrdit alebo vyvratit?

luky

Ak máš pravidlá očislovane 1. 2. 3. tak priorita rastie spolu s číslom pravidla

Expr -> Mul {(+|-) Mul}
Mul -> Op {(*|/) Op}
Op->const|id|"(" Expr")"
násobenie a delenie má vyššiu prioritu ako + a -

Prekladače strana 31

mishelka

Quote from: totaluser on  08.11.2010, 05:59:15
ok
bolo tu povedane ze priorita 1 je najvyssia a 2 je nizsia
teda ak dobre chapem, ze priorita klesa smerom dolu, nemalo by to vyzerat takto?

Expr -> and [ "||" and ]
and -> term { "&&" term }
Term -> "value" | "(" expr ")" 

vdaka ;)
Uz len taky detail, ze terminalne symboly (Term, And, Expr) sa pisu s velkymi pismenami - aby bolo mozne rozlisit co vlastne je terminalny symbol :)
  

#define TRUE FALSE //Happy debugging suckers :D

azzazeL

nazdar mam pri obidvoch operatororoch asociativitu z prava a || ma vyssiu prioritu ako &&, neviem si s ty rady, hlavne s asociativitou
mam to spravene takto ?

Expr -> or [<&&>Expr ]
or -> and [<||> or]
and -> <value> | <(>Expr<)>


mishelka

davam do pozornosti podmienky preberania zadani (keby niekto prepocul na cviku):
http://hornad.fei.tuke.sk/~kreutzova/FJaP/podmienky%20odovzdavania%20zadani.txt
poposielajte si to navzajom, kto koho pozna
  

#define TRUE FALSE //Happy debugging suckers :D

neucilasom

S kym mame cviko skupina zajtra o 16:50 ?

smelyzajo

kto rozumie FJaP a spravil by mi zadanie resp by mi to vysvetlil??????????? :beer1:

ursus

omg btw, terminalne su napr + - ( ) value a neterminalne su expr, term, add ci naopak? ;D
So this router walks into the doctor's office...
- Doctor, it hurts when IP.

neucilasom

Jedna otazka ak napr. / ma vyssiu prioritu ako * a  asoc. je z prava a mam napr vyraz  5/6*8   tak ro ratam ako 5/6 a tak *8  alebo  6*8   a potom 5/ (6 * 8 )  ?


neucilasom


black_stone

Mam tu jeden priklad, mohli by ste mi to vysvetlit ze ako mam postupovat pri takomto type ?

Takze: 1 * 3 / 4 * 5 * 6 / 7 * 8 / 9 * 10

/ ma vyssiu prioritu ako *
/ asociuje doprava
* asociuje dolava

revelc

ak som sa nepomylil tak asi tak:

{[((1*(3/4))*5)*(6/7)]*(8/9)}*10
Čo môžeš urobiť dnes odlož na pozajtra a ziskaš deň voľna.

"I'm a man of simple tastes. I enjoy dynamite...and gunpowder...and gasoline! "

smelyzajo

nema niekto vypracovane 2 zadanie č.25????????????????    bu