Pozdrav, imam problem sa sljedećim zadatkom:
Potrebko je napisati program za evidenciju narudžbi postolara. Postolar zaprima narudžbe od naručitelja, a svaka narudžba može sadržavati više cipela. Svaka cipela ima veličinu (broj), materijal i boju. Za sljedeći programski odsječak u nastavku napišite sve potrebne klase i metode kojima se dobije očekivano ponašanje programskog koda:
int main() {
Postolar p;
Narudzba n1;
n1.narucitelj = "Susjed Mirko";
//Cipela ima broj (velicinu), materijal i boju
n1.dodajCipelu(Cipela(47, "Sky", "plava"));
n1.dodajCipelu(Cipela(44, "Platno", "zelena"));
//Cijena izrade jedne cipele se racuna na nacin da se velicina (broj cipele) pomnozi sa 10.5
double c1 = p.preuzmiNarudzbu(n1);
cout << "Ukupna cijena 1. narudzbe je " << c1 << endl;
Narudzba n2("Barica");
n2.dodajCipelu(Cipela(43, "Koza", "crna"));
double c2 = p.preuzmiNarudzbu(n2);
cout << "Ukupna cijena 2. narudzbe je " << c2 << endl;
//Ispisuje sve narudzbe
//Za svaku narudzbu ispisuje tko je narucitelj te popis svih cipela koje su narucene
p.ispisiNarudzbe();
system("pause");
return 0;
}
Na linku je dostupan cijeli moj projekt. Konkretan problem javlja se u Postolar.h i Postolar.cpp kad trebam napisati funkcije preuzmiNarudzbu (treba izračunati ukupnu cijenu narudžbe i prosljeđuje joj se objekt n1 odnosno n2) i ispisiNarudzbe (za sve narudžbe ispisuje tko je naručitelj, te popis njegovih naručenih cipela). Ono što ne razumijem je kako u funkciji preuzmiNarudzbu pristupiti veličini cipele koja je definirana u konstruktoru u klasi Cipela da bi izračunao ukupnu cijenu, to bi trebalo ići na mjesto gdje je prazni komentar u kodu ispod (ukupna cijena računa se formulom velicina*10.5):
double Postolar::preuzmiNarudzbu(Narudzba n) {
double ukupnaCijena = 0.0;
for (int i = 0; i < n.detalji.size(); i++) {
ukupnaCijena += /* */ * 10.5;
}
return ukupnaCijena;
}
Isto tako, nije mi jasno kako pristupiti svim tim vrijednostima koje treba ispisati u funkciji, jer se traže vrijednosti pospremljene u klasi Narucitelj, a ispis se traži funkcijom koja mora biti napisana u klasi Postolar.
Hvala unaprijed na pomoći.