Zobraziť príspevky

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - LubomirR

Pages: [1]
1
2. ročník / Re: Operacne systemy
« on: 26.04.2011, 20:45:49 »
Robim zadanie a neviem si rady s TCP pripojenim. Uz 4 hodiny sa s tym babrem a nie a nie sa nanho pripojit.. strukturu mam takto
Code: [Select]
struct sockaddr_in adresa;
    adresa.sin_family = AF_INET;
    adresa.sin_addr.s_addr = inet_addr("127.0.0.1");
    adresa.sin_port = 6789;
    bzero(&(adresa.sin_zero), 8);
a napajam sa takto:
Code: [Select]
int sockfd = socket(PF_INET, SOCK_STREAM,0);
        connect (sockfd, (struct sockaddr *) &adresa, sizeof(adresa));
ale connect mi vzdy vracia chybu Connection refused .. v zadani je napisane ze sa mam pripojit na tcp port s ip 127.0.0.1 .. neviete mi poradit kde robim chybu?

sin_port musí byť v network byte order (big endian). Použi funkciu htons na prekonvertovanie:

adresa.sin_port = htons(6789);

2
2. ročník / Re: Matematicka logika
« on: 16.12.2010, 03:07:13 »
ale mozem tam ist aj ked som mal prednasky s Drazenskou, ci nie?

Radšej sa vopred dohodni, lebo aj dnes na predtermíne u Myškovej tam ktosi prišiel od Draženskej a nebola z toho nadšená.

3
2. ročník / Re: Údajové štruktúry a algoritmy
« on: 29.11.2010, 18:09:52 »
čo presne robí toto?

Code: [Select]
if(strcmp(key,ptr->key)==0)return 1;

Porovná reťazce key a ptr->key a ak sú zhodné, vráti číslo 1.
(Funkcia strcmp vracia 0 v prípade, že sú zadané reťazce zhodné, preto treba porovnávať takto: if(strcmp(...) == 0), resp. if(!strcmp(...)).)

4
2. ročník / Re: Formálne jazyky a preklada?e
« on: 29.11.2010, 05:39:15 »
ok.. mmnt .. takze tam ako mam ten while { + B +B + B}, ked niekde bude chybat + tak sa to zotavi na VALUE alebo LPAR ?? ked je to tak, tak som ani zadanie spravne nepochopil ;D
ale inac chlape teraz si ma uz uplne poplietol... ja mam ten kod asi uplne inak ako ma byt ;D  napr vo while v error mam v podmienke aj symbol!=SEOF a v tych ostatnych funkciach posielam kde co...funguje mi to pekne, vypisuje co kde chyba, ale co z toho ked ten test aj tak asi nedam... to mam za to ze k tomu pristupujem intuitivne a nie podla ucebnic hehe... potom som mimo hry v takychto veciach

K tomu while ti skúsim napísať príklad, snáď je správne.

Code: [Select]
/* A -> B {"+" B} */
int a(SetType K) {
  int left, right;
  left = b(E PLUS | H_B | K);

  check(n, E PLUS | H_B | K);
  while ((E symbol) & (E PLUS | H_B)) {
    if (symbol == PLUS) {
      getsymbol();
    } else {
      error(n, E PLUS | H_B | K);
    }
    right = b(E PLUS | H_B | K);
    left += right;

    check(n, E PLUS | H_B | K);
  }

  return left;
}

To SEOF nemusíš dávať nikde (len raz pri volaní A z mainu), lebo sa ti vďaka K dostane všade.

5
2. ročník / Re: Formálne jazyky a preklada?e
« on: 29.11.2010, 04:15:41 »
A -> B {"+" B}

Za prvým B môžu nasledovať plus a B, teda:
B(E PLUS | H_B | K);
Za druhým B môžu nasledovať opäť plus a B, pretože {} môže zabezpečiť ďalšie opakovanie (+ B + B + B...) a ak by chýbalo napr. plus, tak sa zrecoveruje vďaka tomu, že vo while sa testuje, či je aktuálny symbol z (E PLUS | H_B), nie len E PLUS.
B(E PLUS | H_B | K);

B -> C [ "-" B ]

Za C sa dáva len mínus. Nemalo by zmysel dávať do množiny aj H_B, pretože ak by sme dali aj H_B a bolo by vynechané mínus a vďaka nejakému erroru by aj prišlo k začiatku B, tak aj tak nám to nepomôže, lebo volanie B je v ife, ktorý sa celý nevykoná. (Na toto sme sa boli pýtať priamo Kollára, je to podobné ako A -> B ( c d e | f g h ) C - tu sa B zavolá s E c | E f | H_C | K.)
C(E MINUS | K);
Za posledným B už nejde nič (v tomto pravidle):
B(K);

C -> D [ "*" D ]

Podobne ako predchádzajúce:
D(E MUL | K);
D(K);

D -> value | "(" A ")"

Tu bude switch, v default bude error s K (pozor, tu mal Kollár v niektorých príkladoch chybu, dal tam aj E VALUE a E LPAR).
Za A ide len RPAR, čiže:
A(E RPAR | K);

Quote from: antil kiprest
no a potom predsa nemozes len tak dostat SEOF kym sa Ti neuzavrie zatvorka...

To SEOF musí ísť do každého erroru už len kvôli tomu, aby sa ukončil ten while v errore, keď sa narazí na SEOF. Aby si nevolal getsymbol aj vtedy, keď už nie sú dostupné ďalšie symboly.

6
1. ro?ník / Re: Vyber predmetov do druhaku
« on: 29.06.2010, 04:18:34 »
Potvrdzujem.

7
1. ro?ník / Re: online multiplayer hra
« on: 28.06.2010, 18:09:10 »
Ursus, pokiaľ ťa zaujíma sieťové programovanie v C, pozri si napríklad Beej's Guide to Network Programming (http://beej.us/guide/bgnet/).

Pages: [1]