Author Topic: Principy programovacich jazykov  (Read 47540 times)

stamperlik

  • Newbie
  • *
  • Posts: 49
    • View Profile
Principy programovacich jazykov
« on: 19.02.2010, 06:25:43 »
Riesil niekto ulohy z prveho cvicenia?
:ropebanana:

Aniy

  • Hero Member
  • *****
  • Posts: 549
    • View Profile
    • AnimeXpo
Re: Principy programovacich jazykov
« Reply #1 on: 20.02.2010, 03:28:56 »
tam ich bolo viac?


radix

  • Moderator
  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
Re: Principy programovacich jazykov
« Reply #2 on: 20.02.2010, 20:28:59 »
co bolo na prednaske?

LNC

  • Hero Member
  • *****
  • Posts: 1003
  • biflošskí geekovia, to je moje
    • View Profile
    • grcke
Re: Principy programovacich jazykov
« Reply #3 on: 21.02.2010, 00:45:10 »
kde najdem stiahnute vypracovane ulohy? :D
http://www.digitalnysvet.sk/ lubim moj HP Probook

radix

  • Moderator
  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
Re: Principy programovacich jazykov
« Reply #4 on: 21.02.2010, 01:13:42 »
no ze su niekde :D

bludar

  • Jr. Member
  • **
  • Posts: 60
    • View Profile
Re: Principy programovacich jazykov
« Reply #5 on: 21.02.2010, 17:56:08 »
Kde najdem materiály čo ukazoval kolár na prednáške ? Znenie zadania, jazyk typu basic a pod. ???

Aniy

  • Hero Member
  • *****
  • Posts: 549
    • View Profile
    • AnimeXpo
Re: Principy programovacich jazykov
« Reply #6 on: 21.02.2010, 18:33:17 »
Kde najdem materiály čo ukazoval kolár na prednáške ? Znenie zadania, jazyk typu basic a pod. ???
Code: [Select]
http://people.tuke.sk/jan.kollar/FJaP/


Sxx

  • Sr. Member
  • ****
  • Posts: 329
    • View Profile
Re: Principy programovacich jazykov
« Reply #7 on: 23.02.2010, 17:59:27 »
myslim ze viac ludi by zaujimalo kde su vypracovane tie ulohy :)


domino3d

  • Full Member
  • ***
  • Posts: 161
    • View Profile
Re: Principy programovacich jazykov
« Reply #8 on: 25.02.2010, 22:34:15 »
treba ist zajtra na prednasku? ako to je  s prezenckami?
celkom hlucno tam je tak zbytocne sa tam trepat ...
kolki pridete zajtra?
vivat academicus

bubo

  • Full Member
  • ***
  • Posts: 166
  • Game Development <3
    • View Profile
Re: Principy programovacich jazykov
« Reply #9 on: 26.02.2010, 00:22:52 »
Podla mna kollar sa nebude ponizovat na uroven ostatnych a davat prezencky :D to je prilis velka babracka pre takeho sefa.. on tam asi chce mat len ticho. A ked dakto vyrusoval tak povedal ze nech su ticho ze tam nemusia byt. Ale kto vie v ktorom zmysle to myslel...

Edit:  zaujimave.. tu-ke ukazuje ze pisem z linuxu a safari :D
« Last Edit: 26.02.2010, 00:29:34 by bubo »
:puf:

scream

  • Hero Member
  • *****
  • Posts: 534
    • View Profile
Re: Principy programovacich jazykov
« Reply #10 on: 26.02.2010, 03:59:24 »
oplati sa ist na tu prednasku? akoze ci z toho aj clovek nieco ma okrem toho ze zabije piatkove popoludnie...

piton

  • Hero Member
  • *****
  • Posts: 715
    • View Profile
Re: Principy programovacich jazykov
« Reply #11 on: 26.02.2010, 04:13:31 »
no daju sa niektore veci pochopit...
"Iba život, ktorý žijeme pre ostatných, stojí za to." - Albert Einstein

Hezechiel

  • Full Member
  • ***
  • Posts: 105
  • Remember my name, you'll be screaming it later.
    • View Profile
Re: Principy programovacich jazykov
« Reply #12 on: 26.02.2010, 16:18:31 »
2.cvicenie prefixny tvar
Code: [Select]
// postfix.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <stdio.h>

enum ExpElement {NEG, ADD, SUB, MUL, DIV, VALUE};
// Element vyrazu v prefixnej forme
struct Element {
    ExpElement op;
    int value; // Ma vyznam len pre operaciu VALUE
};

//prefixny tvar vyrazu  -3*(2+4)
Element expr[] = {{MUL,0}, {NEG,0}, {VALUE,3}, {ADD,0}, {VALUE,2}, {VALUE,4}};

int pexp = 0; // Aktualna pozicia vo vyraze

int eval() {
int h1,h2;
switch(expr[pexp].op){
case VALUE:h1=expr[pexp].value;pexp++;return(h1);
break;
case MUL:
pexp++;
h1=eval();
h2=eval();
return (h1*h2);
break;
case NEG:
pexp++;
h1=eval();
return (-h1);
break;
case ADD:
pexp++;
h1=eval();
h2=eval();
return (h1+h2);
break;

/* DOPLNIT vetvy pre ADD,SUB,MUL,DIV,NEG
*/
}
//tu sa nema nikdy dostat
return(0);
}

int main() {
    printf("%d\n", eval());
getchar();
}

tak ak by niekto mohol hodit sem veci s prveho a este strom z druheho cvika nech si to pozriem, vdaka
Never argue with idiots. They'll drag you down to their level, then beat you with experience. (GILAMONSTER)
I miss WoW so much :(

Hezechiel

  • Full Member
  • ***
  • Posts: 105
  • Remember my name, you'll be screaming it later.
    • View Profile
Re: Principy programovacich jazykov
« Reply #13 on: 26.02.2010, 16:25:17 »
2. cvicenie strom
Code: [Select]
// strom.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <stdio.h>

//operacie
enum { ADD,SUB,MUL,DIV,NEG,VALUE};
//strom
struct ExpTree {
int op;
union {
struct { ExpTree* expL;ExpTree* expR;} opnds;
struct { ExpTree* exp;} opnd;
int val;
};
};
//vytvorenie stromu pre vyraz -3*(2+4)
ExpTree *MakeSample(){
ExpTree *v3,*v2,*v4,*n1,*n2,*n3;
v3=new ExpTree;v3->op=VALUE;v3->val=3;
v2=new ExpTree;v2->op=VALUE;v2->val=2;
v4=new ExpTree;v4->op=VALUE;v4->val=4;
n1=new ExpTree;n1->op=NEG;n1->opnd.exp=v3;
n2=new ExpTree;n2->op=ADD;n2->opnds.expL=v2;n2->opnds.expR=v4;
n3=new ExpTree;
n3->op=MUL;
n3->opnds.expL=n1;
n3->opnds.expR=n2;
return n3;
}

//vyhodnocovacia funkcia
int eval(ExpTree* exp){
int h1,h2;
switch(exp->op){
case VALUE: return(exp->val);
break;

case NEG:
h1=eval(exp->opnd.exp);
return(-h1);
break;

case MUL:
h1=eval(exp->opnds.expL);
h2=eval(exp->opnds.expR);
return(h1*h2);
break;

case ADD:
h1=eval(exp->opnds.expL);
h2=eval(exp->opnds.expR);
return(h1+h2);
break;



}
//tu sa nema nikdy dostat
return(0);
}

int main()
{
ExpTree* expr;
expr=MakeSample();
printf("%d\n",eval(expr));
getchar();
return 0;
}

tak niekto prve cviko  :hammer:
Never argue with idiots. They'll drag you down to their level, then beat you with experience. (GILAMONSTER)
I miss WoW so much :(

cory

  • Jr. Member
  • **
  • Posts: 76
    • View Profile
Re: Principy programovacich jazykov
« Reply #14 on: 26.02.2010, 17:21:41 »
no co sa tyka tej prednasky, tak je o 25 minut dlhsia jak by mala byt. Zacina 12:20 a konci 15:00, co je 2:40 cisteho casu. A pokial viem trojhodinovka ma mat 2:15. Je to preto lebo v tom case je obednajsia 25 minutova prestavka, ale tu my nemame.....

markus

  • Hero Member
  • *****
  • Posts: 916
    • View Profile
Re: Principy programovacich jazykov
« Reply #15 on: 26.02.2010, 17:24:56 »
ty vole :D takto som nad tym ani nerozmyslal :D to ma normalne nasralo :D:D:D:D

Aniy

  • Hero Member
  • *****
  • Posts: 549
    • View Profile
    • AnimeXpo
Re: Principy programovacich jazykov
« Reply #16 on: 26.02.2010, 17:47:30 »
tak niekto prve cviko  :hammer:
malo by to byť dobre :)
Code: [Select]
// cviko1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

enum NodeType {
    NEG, ADD, SUB, MUL, DIV, VALUE
};
struct Node {
    NodeType type;
    union {
        struct {
            Node *l, *r;
        } operands;
        int value;
    };
};
Node *make_tree()
{
Node *v2, *v3, *v4, *v9, *s, *m, *d, *n;
v2 = new Node; v2->type = VALUE; v2->value = 2;
v3 = new Node; v3->type = VALUE; v3->value = 3;
v4 = new Node; v4->type = VALUE; v4->value = 4;
v9 = new Node; v9->type = VALUE; v9->value = 9;
s = new Node; s->type = SUB;
s->operands.l = v4; s->operands.r = v9;
m = new Node; m->type = MUL;
m->operands.l = v2; m->operands.r = s;
d = new Node; d->type = DIV;
d->operands.l = m; d->operands.r = v3;
n = new Node; n->type = NEG;
n->operands.l = d;
return n;
}
int eval(Node *n) {
switch (n->type){
case 0:
return -1*eval(n->operands.l);
case 1:
return eval(n->operands.l)+eval(n->operands.r);
case 2:
return eval(n->operands.l)-eval(n->operands.r);
case 3:
return eval(n->operands.l)*eval(n->operands.r);
case 4:
return eval(n->operands.l)/eval(n->operands.r);
case 5:
return n->value;

}
}

int _tmain(int argc, _TCHAR* argv[])
{
printf("%d\n", eval (make_tree()));

return 0;
}



VagiClean

  • Newbie
  • *
  • Posts: 30
    • View Profile
Re: Principy programovacich jazykov
« Reply #17 on: 05.03.2010, 14:24:27 »
cvicenie 3: MOCNINA,funguje aj dalsia operacia zamocninou v jednom vyraze (napr 2^3+3)
Code: [Select]
/**********************************************************/
/* Interpretacia vyrazov                                  */
/*--------------------------------------------------------*/
/* E -> T  {  ( "+" | "-" )  T  }                         */
/* T -> F  {  ( "*" | "/" )  F  }                         */
/* F -> cislo |  "("  E  ")"                            */
/**********************************************************/

#include <stdio.h>
#include <stdafx.h>
#include <math.h>

/*--------------------------------------------------------*/
/* syntakticke procedury                                  */
/*--------------------------------------------------------*/

int sym; /* vstupny symbol */
int E(void),T(void),F(void),G(void);  /* prototypy */

int E(void){
int op;
int h1,h2;
h1=T();
while(sym=='+' || sym=='-'){
op=sym;
sym=getchar();
h2=T();
        if(op=='+')h1=h1+h2;
        else h1=h1-h2;
}
return (h1);
}

int T(void){
int op;
int h1,h2;
h1=F();
while(sym=='*' || sym=='/'){
op=sym;
sym=getchar();
h2=F();
        if(op=='*')h1=h1*h2;
        else h1=h1/h2;
}
return (h1);
}

int G(void){
int h1;
switch(sym){
case '0':case '1':case '2':case '3':case '4':
        case '5':case '6':case '7':case '8':case '9':
h1=sym-'0';
while((sym=getchar())>='0' && sym<='9')
h1=h1*10+sym-'0';
     break;
        case '(':
         sym=getchar();
                h1=E();
                if(sym==')')sym=getchar();
else printf("\nChybajuca prava zatvorka\n");
                break;
        default: printf("\nNedovoleny symbol %c\n",sym);
h1=0;
         break;
        }
return (h1);
}

int F(void){
int op;
double h1,h2;
h1=G();
if(sym=='^'){
    
sym=getchar();
h2=G();
        return (int)pow(h1,h2);
}
return (h1);
}

/*--------------------------------------------------------*/
/* hlavny program                                         */
/*--------------------------------------------------------*/
int main(void){
sym=getchar();
printf("\nVysledok: %d\n",E());
sym=getchar();
return(0);
}

majster

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
Re: Principy programovacich jazykov
« Reply #18 on: 07.03.2010, 18:18:15 »
Co to mame my vlastne za zadanie z tohot predmetu >DDD

wolfy

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Principy programovacich jazykov
« Reply #19 on: 08.03.2010, 23:48:39 »
na kt stranke je zoznam zadani ? thx  :)

piton

  • Hero Member
  • *****
  • Posts: 715
    • View Profile
"Iba život, ktorý žijeme pre ostatných, stojí za to." - Albert Einstein

domino3d

  • Full Member
  • ***
  • Posts: 161
    • View Profile
Re: Principy programovacich jazykov
« Reply #21 on: 12.03.2010, 20:34:00 »
co dnes bolo na prednaske?
vivat academicus

deCode666

  • Full Member
  • ***
  • Posts: 212
    • View Profile
Re: Principy programovacich jazykov
« Reply #22 on: 14.03.2010, 22:36:05 »
nebudem chodit kol horucej kase ... kto nam spravi zadanie z PPJ? ... staci prva cast z oboch, nech je zapocet ... mail/ss

periem

  • Newbie
  • *
  • Posts: 35
    • View Profile
Re: Principy programovacich jazykov
« Reply #23 on: 15.03.2010, 15:03:43 »
to zadanie staci odovzdat v zapoctovom tyzdni ci skor??

domino3d

  • Full Member
  • ***
  • Posts: 161
    • View Profile
Re: Principy programovacich jazykov
« Reply #24 on: 19.03.2010, 17:14:30 »
co potrebujeme na zadanie?
vedel som ta ze z kazdeho zadania staci prvu cast. a teraz sa dozvedam o nejakom referate... tak ako to je vlastne?
vivat academicus