Prethodna tema :: Sljedeća tema |
Autor/ica |
Poruka |
ante003 Forumaš(ica)
Pridružen/a: 13. 10. 2008. (17:45:10) Postovi: (3C5)16
Spol:
|
|
[Vrh] |
|
miam Forumaš(ica)
Pridružen/a: 03. 11. 2009. (11:19:45) Postovi: (70)16
Spol:
|
|
[Vrh] |
|
pbakic Forumaš(ica)
Pridružen/a: 05. 10. 2009. (17:48:30) Postovi: (143)16
Spol:
|
Postano: 23:50 uto, 2. 11. 2010 Naslov: |
|
|
[quote="miam"] a, kako bi to islo? :)[/quote]
evo, ako jos pomaze :D
[code:1]void stavinadrugomjesto(elementtype x, STACK *S){
elementtype a=TOP(*S);
POP(S);
if(EMPTY(*S)){
PUSH(a,S);
PUSH(x,S);
}
else {
stavinadrugomjesto(x, S);
PUSH(a,S);
}
return;
}[/code:1]
miam (napisa): | a, kako bi to islo? |
evo, ako jos pomaze
Kod: | void stavinadrugomjesto(elementtype x, STACK *S){
elementtype a=TOP(*S);
POP(S);
if(EMPTY(*S)){
PUSH(a,S);
PUSH(x,S);
}
else {
stavinadrugomjesto(x, S);
PUSH(a,S);
}
return;
} |
|
|
[Vrh] |
|
Alisa Forumaš(ica)
Pridružen/a: 16. 02. 2008. (15:34:59) Postovi: (4E)16
|
|
[Vrh] |
|
Marvin Forumaš(ica)
Pridružen/a: 01. 12. 2006. (15:46:10) Postovi: (56)16
|
|
[Vrh] |
|
kakt00s Forumaš(ica)
Pridružen/a: 17. 10. 2007. (12:19:40) Postovi: (183)16
Spol:
Lokacija: :ɐɾıɔɐʞoן
|
|
[Vrh] |
|
.anchy. Forumaš(ica)
Pridružen/a: 14. 11. 2007. (20:03:46) Postovi: (1BC)16
Lokacija: Zgb
|
|
[Vrh] |
|
lanek Forumaš(ica)
Pridružen/a: 06. 10. 2009. (21:51:48) Postovi: (51)16
Spol:
|
|
[Vrh] |
|
bench001 Forumaš(ica)
Pridružen/a: 31. 10. 2012. (16:47:02) Postovi: (11)16
|
Postano: 12:15 uto, 24. 11. 2015 Naslov: Re: 1. kolokvij 2010. |
|
|
[quote="Cobs"][quote="homesweethome"]4. zadatak:
a)
...
nije mi jasno kod poziva fje saren, zar je ispravno napisati...
[/quote]
ja bih reko da je rješenje krivo. Mislim da tak nekaj i piše u par postova ispod.
nezam funkcije koje se trebaju upotrijebiti al bi nekak ovak to izgledalo.
[code:1]
void saren( BTREE T ){
n = korijen od T;
int ok_l = 0;
int ok_d = 0;
if( postoji lijevo dijete od n ) ok_l = 1;
if( postoji desno dijete od n ) ok_d = 1;
if( oznaka od n djeljiva sa 2 ){
int ispisi = 1;
if( ok_l )
if( oznaka lijevog djeteta djeljiva sa 2 ) ispisi = 0;
if( ok_d )
if( oznaka desnog djeteta djeljiva sa 2 ) ispisi = 0;
if( ispisi ) printf( oznaka od n );
}
if( ok_l ) saren( lijevo_dijete_od_T );
if( ok_d ) saren( desno_dijete_od_T );
return;
}
[/code:1][/quote]
1. kolokvij, 2009. godina
Zadatak:
Promotrimo binarna stabla kojima su oznake cvorova tipa int.
Kazemo da je cvor stabla saren ako je njegova oznaka paran broj i nema dijete cija je oznaka parna. Napisite funkciju void saren(BTREE T) koja ispisuje oznake svih sarenih cvorova stabla T.
Funkcija treba biti neovisna o implementaciji atp BTREE; smijete denirati i dodatne pomocne funkcije.
Valja li ovo rješenje?
int paran (int a){
if (!(a%2)) return 1;
return 0;
}
void obidiStablo (node n, BTREE T){
if (n==LAMBDA) return;
if (paran (BiLabel (n, T))){
if( (!paran (BiLabel (BiLeftChild (n, T), T)) || BiLeftChild (n, T) == LAMBDA) && (!paran (BiLabel (BiRightChild (n, T), T)) || BiRightChild (n, T) == LAMBDA) )
printf ("%d\n", BiLabel (n, T));
}
obidiStablo (BiLeftChild (n, T), T);
obidiStablo (BiRightChild (n, T), T);
}
void saren (BTREE T){
obidiStablo (BiRoot(T), T);
}
Cobs (napisa): | homesweethome (napisa): | 4. zadatak:
a)
...
nije mi jasno kod poziva fje saren, zar je ispravno napisati...
|
ja bih reko da je rješenje krivo. Mislim da tak nekaj i piše u par postova ispod.
nezam funkcije koje se trebaju upotrijebiti al bi nekak ovak to izgledalo.
Kod: |
void saren( BTREE T ){
n = korijen od T;
int ok_l = 0;
int ok_d = 0;
if( postoji lijevo dijete od n ) ok_l = 1;
if( postoji desno dijete od n ) ok_d = 1;
if( oznaka od n djeljiva sa 2 ){
int ispisi = 1;
if( ok_l )
if( oznaka lijevog djeteta djeljiva sa 2 ) ispisi = 0;
if( ok_d )
if( oznaka desnog djeteta djeljiva sa 2 ) ispisi = 0;
if( ispisi ) printf( oznaka od n );
}
if( ok_l ) saren( lijevo_dijete_od_T );
if( ok_d ) saren( desno_dijete_od_T );
return;
}
|
|
1. kolokvij, 2009. godina
Zadatak:
Promotrimo binarna stabla kojima su oznake cvorova tipa int.
Kazemo da je cvor stabla saren ako je njegova oznaka paran broj i nema dijete cija je oznaka parna. Napisite funkciju void saren(BTREE T) koja ispisuje oznake svih sarenih cvorova stabla T.
Funkcija treba biti neovisna o implementaciji atp BTREE; smijete denirati i dodatne pomocne funkcije.
Valja li ovo rješenje?
int paran (int a){
if (!(a%2)) return 1;
return 0;
}
void obidiStablo (node n, BTREE T){
if (n==LAMBDA) return;
if (paran (BiLabel (n, T))){
if( (!paran (BiLabel (BiLeftChild (n, T), T)) || BiLeftChild (n, T) == LAMBDA) && (!paran (BiLabel (BiRightChild (n, T), T)) || BiRightChild (n, T) == LAMBDA) )
printf ("%d\n", BiLabel (n, T));
}
obidiStablo (BiLeftChild (n, T), T);
obidiStablo (BiRightChild (n, T), T);
}
void saren (BTREE T){
obidiStablo (BiRoot(T), T);
}
|
|
[Vrh] |
|
|