Kod: |
#include <iostream>
#include <string> #include <list> using namespace std; #include "videoteka.h" void ispisiFilmove(const vector<film*>& f) { for (int i = 0; i<f.size(); ++i) cout << f[i]->ime_filma << endl; cout << endl; } void ispisiSet(const set<string>& ss) { for (set<string>::const_iterator i = ss.begin(); i != ss.end(); ++i) cout << *i << endl; cout << endl; } int main() { videoteka a("videoteka a", 2, 7); film prvi(a, "prvi", 10); film drugi(a, "drugi", 15); { film treci(a, "treci", 11); videoteka b("videoteka b", 1, 5); film cetvrti(b, "cetvrti", 8); cout << a.posudi(cetvrti, "ivo ivic") << endl; // 0; film nije u toj videoteci cout << b.posudi(cetvrti, "ivo ivic") << endl; // 1; ivo ivic posudjuje taj film cout << a.posudi(prvi, "ivo ivic") << endl; // 0; ivo ivic je vec posudio film cout << cetvrti.premotaj() << endl; // 0; film jos nije pogledan cout << cetvrti.gledaj() << endl; // 1 cout << cetvrti.premotaj() << endl; // 1 cout << cetvrti.gledaj() << endl; // 1 cout << a.vrati(cetvrti) << endl; // 16 = 7(preseljenje iz A u B) +8(posudjivanje filma ) + 1(premotavanje u B) cout << a.posudi(prvi, "ivo ivic") << endl; // 1; cout << a.posudi(prvi, "marko markic") << endl; // 0; film je vec posudjen ispisiFilmove(a.trenutno_dostupni_filmovi()); // drugi // treci // ispisiFilmove(film::trenutno_dostupni_filmovi()); // cetvrti // drugi // treci // cout << b.osoba_vraca_film("jozo jozic") << endl; // 0 cout << b.osoba_vraca_film("ivo ivic") << endl; // 15 = 5(preseljenje iz B u A) + 10(posudjivanje filma) videoteka *v = videoteka::nadji_videoteku("ove nema"); // NULL v = videoteka::nadji_videoteku("videoteka b"); // v = &b ispisiFilmove(a.filmovi_pogledani("ivo ivic")); // prvi // ispisiFilmove(a.filmovi_pogledani_svuda("ivo ivic")); // cetvrti // prvi // } ispisiFilmove(a.filmovi_pogledani_svuda("ivo ivic")); // prvi // ispisiFilmove(film::trenutno_dostupni_filmovi()); // drugi // prvi // film* f = film::nadji_film("nema ga"); // NULL f = film::nadji_film("prvi"); // f = &prvi; f = film::najposudjivaniji_film(); // f = &prvi; ispisiSet(f.osobe_koje_su_posudile_film()); // ivo ivic // return 0; } |
vinko (napisa): |
Evo maina za videoteku |
vinko (napisa): |
Evo maina za videoteku (na strukturu film dodajte još element string ime_filma): |
Anonymous (napisa): | ||
Biste li mogli staviti i main za autokucu? Hvala! ![]() |
Kod: |
#include "autokuca.h" #include <iostream> #include <string> #include <list> #include <set> #include <map> using namespace std; void ispisiAutomobile(const vector<automobil*>& va) { for (int i = 0; i<va.size(); ++i) cout << va[i]->registracija << endl; cout << endl; } void ispisiTrenutnoIznajmljene(const map<string, automobil*>& msa) { for (map<string, automobil*>::const_iterator i = msa.begin(); i != msa.end(); ++i) cout << i->first << ": " << i->second->registracija << endl; cout << endl; } void ispisiSet(const set<string>& ss) { for (set<string>::const_iterator i = ss.begin(); i != ss.end(); ++i) cout << *i << endl; cout << endl; } int main() { autokuca a("autokuca a", 7); automobil prvi(a, "ZG111AA", 10, 2); automobil drugi(a, "ZG222AA", 15, 2); { automobil treci(a, "ZG333AA", 11, 3); autokuca b("autokuca b", 5); automobil cetvrti(b, "ZG444BB", 8, 3); cout << a.iznajmi(cetvrti, "ivo ivic") << endl; // 0; automobil nije u toj autokuci cout << b.iznajmi(cetvrti, "ivo ivic") << endl; // 1; ivo ivic iznajmljuje taj automobil cout << a.iznajmi(prvi, "ivo ivic") << endl; // 0; ivo ivic je vec iznamio automobil cetvrti.vozi(10); cetvrti.vozi(20); cetvrti.dolij_goriva(15); cout << a.vrati(cetvrti) << endl; // 60 = 7(preseljenje iz A u B) +8(iznajmljivanje) + 45(goriva nedostaje za 15 km) cout << a.iznajmi(prvi, "ivo ivic") << endl; // 1; cout << a.iznajmi(prvi, "marko markic") << endl; // 0; automobil je vec iznajmljen ispisiAutomobile(a.trenutno_dostupni_automobili()); // ZG222AA // ZG333AA // ispisiAutomobile(automobil::trenutno_dostupni_automobili()); // ZG222AA // ZG333AA // ZG444BB // ispisiTrenutnoIznajmljene(a.iznajmljeni_automobili()); // ivo ivic: ZG111AA // cout << b.osoba_vraca_automobil("jozo jozic") << endl; // 0 cout << b.osoba_vraca_automobil("ivo ivic") << endl; // 15 = 5(preseljenje iz B u A) + 10(iznajmljivanje) autokuca *v = autokuca::nadji_autokucu("ove nema"); // NULL v = autokuca::nadji_autokucu("autokuca b"); // v = &b ispisiAutomobile(automobil::trenutno_dostupni_automobili()); // ZG111AA // ZG222AA // ZG333AA // ZG444BB // } ispisiAutomobile(automobil::trenutno_dostupni_automobili()); // ZG111AA // ZG222AA // ispisiSet(prvi.osobe_koje_su_iznajmile_automobil()); // ivo ivic // automobil* f = automobil::nadji_automobil("nema ga"); // NULL f = automobil::nadji_automobil("ZG111AA"); // f = &prvi; f = automobil::najposudjivaniji_automobil(); // f = &prvi; return 0; } |
Gino (napisa): | ||
jel se ocekuje da to tako posaljem, mislim meni se ime filma naziva naziv i za isprobat main rade promijenim vasu funkciju nego svoj kod ![]() |
Kod: |
#include "knjiznica.h"
#include <iostream> #include <string> #include <vector> #include <string> #include <list> using namespace std; void ispisiKnjige(const vector<knjiga*>& f) { for (int i = 0; i<f.size(); ++i) cout << f[i]->ime_knjige << endl; cout << endl; } void ispisiSet(const set<string>& ss) { for (set<string>::const_iterator i = ss.begin(); i != ss.end(); ++i) cout << *i << endl; cout << endl; } int main() { knjiznica a("knjiznica a", 7); knjiga prva(a, "prva", 10); knjiga druga(a, "druga", 15); { knjiga treca(a, "treca", 11); knjiznica b("knjiznica b", 5); knjiga cetvrta(b, "cetvrta", 8); cout << a.posudi(cetvrta, "ivo ivic") << endl; // 0; knjiga nije u toj knjiznici cout << b.posudi(cetvrta, "ivo ivic") << endl; // 1; ivo ivic posudjuje tu knjigu cout << a.posudi(prva, "ivo ivic") << endl; // 0; ivo ivic je vec posudio knjigu cout << cetvrta.citaj(111) << endl; // 1; stranica je citava cout << cetvrta.poderi(111) << endl; // 1; stranica nije bila poderana prije cout << cetvrta.citaj(100) << endl; // 1; stranica je citava cout << cetvrta.citaj(111) << endl; // 0; stranica je poderana cout << cetvrta.poderi(123) << endl; // 1; stranica nije bila poderana prije cout << a.vrati(cetvrta) << endl; // 23 = 7(preseljenje iz A u B) + 16(popravak 2 stranice) cout << a.posudi(prva, "ivo ivic") << endl; // 1; cout << a.posudi(prva, "marko markic") << endl; // 0; knjiga je vec posudjen ispisiKnjige(a.trenutno_dostupne_knjige()); // druga // treca // ispisiKnjige(knjiga::trenutno_dostupne_knjige()); // cetvrta // druga // treca // cout << b.osoba_vraca_knjigu("jozo jozic") << endl; // -1 cout << b.osoba_vraca_knjigu("ivo ivic") << endl; // 5 = 5(preseljenje iz B u A) knjiznica *v = knjiznica::nadji_knjiznicu("ove nema"); // NULL v = knjiznica::nadji_knjiznicu("knjiznica b"); // v = &b ispisiKnjige(a.knjige_procitane("ivo ivic")); // prva // ispisiKnjige(knjiznica::knjige_ostecene_svuda("ivo ivic")); // cetvrta // } ispisiKnjige(knjiznica::knjige_ostecene_svuda("ivo ivic")); // knjiga* f = knjiga::nadji_knjigu("nema je"); // NULL f = knjiga::nadji_knjigu("prva"); // f = &prva; ispisiSet(prva.osobe_koje_su_posudile_knjigu()); // ivo ivic // return 0; } |
Kardinal (napisa): |
Vezano uz autokuće, tek je sad vidljivo što je trebalo radit s gorivom... Ali gospon asistent, takve stvari se pišu u tekstu zadatka, a ne da mi to moramo sami iz mainova objavljenih na dan predaje čupat.... ![]() Hm, hm, i ne znam jel se to čini samo meni ili ste krivo iskomentirali output za autokuću?? Kako Vam nakon zatvaranja bloka može još uvijek postojati automobil treci? Kako Vam istovremenao automobil prvi moze biti i iznajmljen i dostupan???? |
bozidarsevo (napisa): |
koja je to fora da ima beskonačno goriva? zar ne bi bilo nekako bolje tj. stvarnije da auto kada je iznajmljen ima neku količinu goriva? npr. da stanje goriva u trenutku iznajmljivanja bude 20...
do kada će onda bit rok predaje? |
Kod: |
struct film{ ... videoteka* video; film( videoteka& v, unsigned int cijena_vracanja ){ ... } ... }; |
Kod: |
film::film( videoteka& v, ... ) |
Kod: |
struct film { ... videoteka& video; ... film( videoteka &v, ... ); ... }; |
Kod: |
film::film( videoteka& v, ... ){ ... video = v; ... } |
Kod: |
int x; int& rx = x; |
Kod: |
int x; int& rx; |
Kod: |
struct STRUKTURA { tip_1 var_1; // tip_1 i 2 mi mogu biti bilo koji tipovi ( int, double, pointer na nesto...) tip_2 var_2; STRUKTURA( tip_1 x, tip_2 y ); }; |
Kod: |
STRUKTURA( tip_1 x, tip_2 y ){ var_1 = x; var_2 = y; } |
Kod: |
STRUKTURA( tip_1 x, tip_2 y ): var_1( tip_1() ), var_2( tip_2() ) { var_1 = x; var_2 = y; } |
Kod: |
STRUKTURA( tip_1 x, tip_2 y ) :var_1( x ), var_2 (y) {} |
Kod: |
struct film{
... videoteka& video; film( videoteka& v, unsigned int cijena_vracanja ) : video(v){ ... } ... }; |
Anonymous (napisa): |
videoteka *v = videoteka::nadji_videoteku("ove nema"); // NULL v = videoteka::nadji_videoteku("videoteka b"); // v = &b zašto meni ništa ne ispisuje?jeli to ima veze s destruktorom,s obzirom da ne znam što da stavim u njega? ![]() |
Anonymous (napisa): |
meni recimo nisu jasna uništavanja objekata? da li to znači nešto vezano uz destruktor, što se uopće treba nalaziti u destuktoru? jel mi trebamo proći kroz listu objekata i onda uništiti onaj s kojim smo upravo radili?
npr.,nisu mi jasne dvije linije u mainu: videoteka *v = videoteka::nadji_videoteku("ove nema"); // NULL v = videoteka::nadji_videoteku("videoteka b"); // v = &b zašto meni ništa ne ispisuje?jeli to ima veze s destruktorom,s obzirom da ne znam što da stavim u njega? ![]() |
there is no spoon (napisa): | ||
meni output vinkovog maina ispada ovakav (drugaciji je od onoga u komentarima koda, ali po nekoj logici bi to trebalo biti tocno)
0 1 0 60 1 0 ZG222AA ZG333AA ZG222AA ZG333AA ZG444BB 0 15 ZG111AA ZG222AA ZG333AA ZG444BB ZG111AA ZG222AA ivo ivic Added after 3 minutes:
nista ti ne ispisuje jer u ova dva retka ni nema nikakvog ispisa. |
Anonymous (napisa): |
ako može još samo jedno pitanje da si to s uništavanjem definitivno razjasnim,netko je već to bio pitao ode na forumu( automobil je bio u pitanju),ali je taj netko i shvatio,pa ako može objašnjenje za nas(mene) koji još uvijek neshvaćamo ...u nekim f-jama je uvjet da je objekt još živ,da li mi trebamo provjeravat jeli objekt još živ? nevazno,automobil, film, knjiga...
ili to jednostavno zanemarimo |
output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.