Author Topic: Principy programovacich jazykov  (Read 47601 times)

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #200 on: 12.05.2010, 23:39:43 »
nema niekto vypracovane zotavenia? bo stale neviem jak to ma byt:(

stiffmaister

  • Newbie
  • *
  • Posts: 37
  • money talks, silence pays...
    • View Profile
Re: Principy programovacich jazykov
« Reply #201 on: 13.05.2010, 04:13:45 »
nema niekto vypracovane zotavenia? bo stale neviem jak to ma byt:(
nj, to by bodlo. ak to niekto vie, pomozte, pls..... :embarassed:

drtic

  • Full Member
  • ***
  • Posts: 200
    • View Profile
Re: Principy programovacich jazykov
« Reply #202 on: 13.05.2010, 05:08:06 »
V podstate tam ide o to ze su dve procedury Check(SymSet K) a Error(SymSet K), ktore su vzdy rovnake a tretia procedura, pre ktoru robite zotavenie. Vychadzate z predpisu tej procedury a podla toho pisete kod. Ako na to je velmi dobre ukazane v Plocicovej 5.tej prezentacii. Z toho sa to da naucit.

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #203 on: 13.05.2010, 05:45:33 »
je to tam vysvetlene, ale napr. ked su zlozitejsie veci ako bolo v druhej skupine na skuske tak to neni az taka sranda....

stiff...

ja by som  (H(B)|H(C)) robil cez kombinaciu IF - overi ci je z danej mnoziny a  SWITCH. case H(B) volanie procedury B a case C volanie C, default error.  Toto co si napisal ty by bolo podla mna dobre keby  tam nebolo B ale b - cize terminal.
NEVYPRACOVANA SKUSKA JE TU http://ulozto.sk/4762233/ppj7-5-2010.zip
« Last Edit: 13.05.2010, 05:57:31 by scream »

stiffmaister

  • Newbie
  • *
  • Posts: 37
  • money talks, silence pays...
    • View Profile
Re: Principy programovacich jazykov
« Reply #204 on: 13.05.2010, 05:57:03 »
nejako takto?

Code: [Select]
X -> A[B|C]D:
void x (symset K)
{
A(H(B)|H(C)|H(D)|K);
check (H(B)|H(C)|H(D)|K);
if (sy in (H(B)|H(C))
  {
   switch (sy)
    case H(B) : B(K);
    case H(C) : C(K);
    default : error (H(B)|H(C));
   }
else check (H(D)|K);
switch (sy)
    case H(D) : D(K);
    default : error (K);
}

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #205 on: 13.05.2010, 06:09:34 »
Code: [Select]
X -> A[B|C]D:
void x (symset K)
{
A(H(B)|H(C)|H(D)|K);

check (H(B)|H(C)|H(D)|K);
if (sy in (H(B)|H(C))
  {
check (H(B)|H(C);
   switch (sy){
    case H(B) : B( HD | K);
    case H(C) : C(HD | K);
}
    }
D(K);
}

EDIT !
dajak tak...
« Last Edit: 13.05.2010, 06:19:57 by scream »

meki

  • Full Member
  • ***
  • Posts: 164
    • View Profile
Re: Principy programovacich jazykov
« Reply #206 on: 13.05.2010, 06:47:20 »
tak by to malo byt na 99% dobre :D
Code: [Select]
X -> A[B|C]D:
void x (symset K)
{
A(H(B)|H(C)|H(D)|K);
check (H(B)|H(C)|H(D)|K);
if (sy & (H(B)|H(C))
  {
   check (H(B)|H(C)|K);
   switch (sy)
  {
    case H(B) : B(K);break;
    case H(C) : C(K);break;
    default : error (K);
   }
}

D(K);
}

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #207 on: 13.05.2010, 06:56:38 »
preco default : error (K); ? ved nic ine ako H(B), H(C) nemoze byt na vstupe po osetreni IF nie?

meki

  • Full Member
  • ***
  • Posts: 164
    • View Profile
Re: Principy programovacich jazykov
« Reply #208 on: 13.05.2010, 07:08:39 »
preco default : error (K); ? ved nic ine ako H(B), H(C) nemoze byt na vstupe po osetreni IF nie?
ved aj v tej plocicovej prednaske je po if error a kamos mal tak minule na skuske a mal Acko...

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #209 on: 13.05.2010, 07:19:18 »
no ja by som rad vedel preco tam ma byt... [ ] znamena 0...1, cize to tam moze byt alebo aj nemusi....  cize ak tam nieje znak z H(B) H(C) tak to nemusi byt chyba lebo moze byt z H(D)...tak to chapem ja....

sad47

  • Newbie
  • *
  • Posts: 37
    • View Profile
Re: Principy programovacich jazykov
« Reply #210 on: 13.05.2010, 14:13:56 »
Hodte sem prosim niekto link na tu plocicovu stranku... nejak nemam sajn kde to je

periem

  • Newbie
  • *
  • Posts: 35
    • View Profile

jim-beam33

  • Jr. Member
  • **
  • Posts: 56
    • View Profile
Re: Principy programovacich jazykov
« Reply #212 on: 13.05.2010, 16:55:44 »
Lustim krizovku - vie niekto ci to je spravne? bu
zadane bolo: A -> a b A / a {B} trebalo to upravit do bezkontextoveho tvaru: A -> a (b A / {B})

void A(symbolset K) {

if(sym == a)  getsymbol(); esle error(H(b)|HA|HB|K);
chceck(H(b)|HA|HB|K)
switch(sym) {

case H(b):   

if(sym == b ) getsymbol() ; 
A(k);
}break;

case HB :    {         

check(HB | K ) ;                                 

while(sym in HB) {   

B(HB | K ) ;                             

check (HB|K);                               

}
} break;
defaul error(H(b) | HA|HB | K ) ;     

}

}

jim-beam33

  • Jr. Member
  • **
  • Posts: 56
    • View Profile
Re: Principy programovacich jazykov
« Reply #213 on: 13.05.2010, 17:01:12 »
Code: [Select]
[quote author=meki link=topic=4058.msg187267#msg187267 date=1273704440]
tak by to malo byt na 99% dobre :D


no ja by som to trosku poopravil...
X -> A[B|C]D:
void x (symset K)
{
A(H(B)|H(C)|H(D)|K);
check (H(B)|H(C)|H(D)|K);
if (sy & (H(B)|H(C))
  {
   check (H(B)|H(C)|K);
   switch (sy)
  {
    case H(B) : B(H(D)|K);break;
    case H(C) : C(H(D)|K);break;
    default : error (H(B)|H(C)|K);
   }
}

D(K);
}
[/quote]

markus

  • Hero Member
  • *****
  • Posts: 916
    • View Profile
Re: Principy programovacich jazykov
« Reply #214 on: 13.05.2010, 17:34:33 »
Lustim krizovku - vie niekto ci to je spravne? bu
zadane bolo: A -> a b A / a {B} trebalo to upravit do bezkontextoveho tvaru: A -> a (b A / {B})....

Robil som to podobne ale mensie upravy:
Code: [Select]

void A(symbolset K)
{
   if(sym == a)  getsymbol();
   esle error({b}|HA|HB|K);
   check({b}|HA|HB|K)
   switch(sym)
   {
         case b: {
                       getsymbol(); 
                       A(k);
                       break;
                     }
        case HB :{         
                       check(HB | K ) ;                                 
                       while(sym & HB)
                       {   
                            B(HB | K ) ;                             
                            check (HB|K);                               
                       }
                       break;
                      }
        defaul: error(K ) ;     
    }
}

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #215 on: 13.05.2010, 17:47:27 »
ja by som to spravil tak ako markus....

Inak kde su nejake pravidla na tu pociatocnu upravu do bezkontextoveho jazyka?

jim-beam33

  • Jr. Member
  • **
  • Posts: 56
    • View Profile
Re: Principy programovacich jazykov
« Reply #216 on: 13.05.2010, 17:52:28 »
Lustim krizovku - vie niekto ci to je spravne? bu
zadane bolo: A -> a b A / a {B} trebalo to upravit do bezkontextoveho tvaru: A -> a (b A / {B})....

Robil som to podobne ale mensie upravy:
Code: [Select]

void A(symbolset K)
{
   if(sym == a)  getsymbol();
   esle error({b}|HA|HB|K);
   check({b}|HA|HB|K)
   switch(sym)
   {
         case b: {
                       getsymbol(); 
                       A(k);
                       break;
                     }
        case HB :{         
                       check(HB | K ) ;                                 
                       while(sym & HB)
                       {   
                            B(HB | K ) ;                             
                            check (HB|K);                               
                       }
                       break;
                      }
        defaul: error(K ) ;     
    }
}

preco je default:error (K); ?????

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #217 on: 13.05.2010, 18:22:50 »
lebo switch deinuje co sa ma robit pre (b A / {B}) a ak pride nejaky iny znak (chyba) tak to skoci do default a vyhodi error.

markus

  • Hero Member
  • *****
  • Posts: 916
    • View Profile
Re: Principy programovacich jazykov
« Reply #218 on: 13.05.2010, 21:01:27 »
vie mi niekto povedat aky je rozdiel ked kreslim deterministicky a nedeterministicky graf?

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #219 on: 13.05.2010, 22:18:44 »
a to je co? :D

thom

  • Jr. Member
  • **
  • Posts: 92
    • View Profile
Re: Principy programovacich jazykov
« Reply #220 on: 14.05.2010, 00:52:23 »
vie mi niekto povedat aky je rozdiel ked kreslim deterministicky a nedeterministicky graf?
Tak co ja si dobre pamatam tak deterministicky graf je taky, ze ak mas napr. dva vrcholy a z vrcholu c. 1 ides do vrcholu c. 2 iba po hrane "a"
a nedeterministicky je taky,ze mas tiez napr. dva vrcholy a z vrcholu c.1 ides do vrcholu c.2 a mozes ist po hrane "a", ale moze ist aj dalsou hranou "a".
Ale aby som to este aj inac vysvetlil tak, ze medzi dvoma vrcholmi mas jednu hranu "a" cize sa vies presne dostat z c.1 do c.2 - mas determinizmus
ale ak mas medzi c.1 a c.2 dve hrany "a" (lebo aj tak mozes mat) - nevies sa uz presne rozhodnut ako dalej, cize mas nedeterminizmus.
dufam,ze som to vysvetlil rozumne :)

markus

  • Hero Member
  • *****
  • Posts: 916
    • View Profile
Re: Principy programovacich jazykov
« Reply #221 on: 14.05.2010, 04:39:31 »
vzhladom na to ze sa mi uz podarilo najst v skriptach nieco o tom tak hej :D diky :D

kukinko

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: Principy programovacich jazykov
« Reply #222 on: 14.05.2010, 14:03:25 »
dnesok nevyzera dobre...
hnusne pocasie...
hnusna skuska....
 :(
aj externisti ešte žijú .... len ktovie dokedy ... :(

lama niesom, ale všetko neviem .. ..

kúpim LCD na PS ONE

mucko

  • Guest
Re: Principy programovacich jazykov
« Reply #223 on: 14.05.2010, 16:55:19 »
ako znie Kollarova stranka? este mam dve hodiny takze mozno sa stihnem aj nieco naucit  :ropebanana:

romeo

  • Jr. Member
  • **
  • Posts: 75
    • View Profile
Re: Principy programovacich jazykov
« Reply #224 on: 14.05.2010, 21:00:26 »
dneska zase zabil... 98.9 percent ze nemam...
....in dreams until my death i will wander on ....