n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
Preučite razred vector v STL knjižnici tukaj.
Nato nalogo 5.1. dopolnite tako, da bo glavni program uporabljal razred vector. Elementi razreda vektor so Stranke.
Poleg metode push_back demonstrirajte vsaj še dveh metod razreda vector ter uporabite iteratorja begin in end za pomik po elementih vektorja.
Primer za push_back:
seznam_strank.push_back(new Stranka("Janez Hlebec", new Datum(17,4,2009)));
V komentar odgovori na naslednja vprašanja:
- Kako deluje destruktor v razredu vector?
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
Napišite šablono razreda Aritmetika. Razred vsebuje polje ene dimenzije ter število elementov v polju (maksimalna velikost polja je 10).
Velikost polja podajte razredu s parametrom.
V razredu napišite naslednje funkcije:
- sum – vsota vseh elementov
- max- vrne največjega v polju
- povprecna – vrne povprečno vrednost v polju
- toString – ki vrne string elementov polja, ločenih z vejico
Izpis glavnega programa mora biti identičen podanemu.
Izpis programa:
Vsota: 11.3
Max: 4.2
Povpecje: 2.825
String: 2, 3, 4.2, 2.1
St. znakov: 65
Max: intervencijska
Povpecje: 6.5
String: Medveda je v blizini gostilne Pod Roznikom uspavala intervencijska skupina
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
Po vzoru naloge 7.2 pripravite še šablonske funkcije za delo s polji besed (string-i).
Napišite naslednje funkcije:
- sum – vsota dolžine vseh besed
- max – vrne najdaljšo besedo v polju
- povprecna – vrne povprečno velikost besed v polju
- toString – vrne stavek – besede iz polja ločene z vejico.
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
S pomočjo šablon napišite funkcije za delo s polji ene dimenzije.
Velikost polja podajte funkcijam preko parametra.
Napišite naslednje funkcije:
- sum – vsota vseh elementov
- max- vrne največjega v polju
- povprecna – vrne povprečno vrednost v polju
- toString – ki vrne string elementov polja, ločenih z vejico
Preuči kaj naredi ukaz:”sizeof p/sizeof p[0]” – glej primer.
Izpis glavnega programa mora biti identičen podanemu.
Primer izpisa:
10
52.3
4
45.2
2.5
13.075
1, 2, 3, 4
2, 3, 45.2, 2.1
Press any key to continue . . .
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
- Napišite razred Datum z naslednjimi zaščitenimi lastnostmi: dan, mesec in leto.
- Za razred zapišite še konstruktorje (privzeti in konstruktor s tremi parametri) in metodo izpis.
- Napišite razred Ura z naslednjimi zaščitenimi lastnostmi: ura, minute in sekunde.
- Za razred zapišite še konstruktorje (privzeti in konstruktor s tremi parametri) in metodo izpis.
- Napišite razred DatumUra, ki deduje iz razreda Datum in Ura (večratno dedovanje).
- Za razred zapišite še konstruktorje (privzeti in konstruktor s šestimi parametri) in prekrijte metodo izpis.
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
- Napišite razred IzpisPonudbe, ki bo imel zaščiteno lastnost seznamIzdelkov, stevilo_storitev in podjetje ( razrede snamite tukaj).
- Konstruktur (privzeti, kopirni, pretvorbeni)
- Destruktor
- Napišite javno metodo izpisPonudbe z naslednjo funkcionalnostjo:
izpisPonudbe() {
glavaPonudbe();
for(int i=0; i< stevilo_izdelkov; i++)
{
teloPonudbe(i, izdelki[i]);
}
nogaPonudbe();
}
- Javno abstraktno metodo glavaPonudbe(), ki na ponudbo izpiše podatke o podjetju.
- Javno abstraktno metodo teloPonudbe(int i, Storitev stor), ki na ponudbo izpiše podatke o izdelku.
- Javno abstraktno metodo nogaPonudbe(), ki na ponudbo izpiše podatek o skupni ceni izdelkov.
- Iz razreda IzpisPonudbe izpeljite razred IzpisPonudbeTekst, ki implementira metode glavaPonudbe(), teloPonudbe(Storitev stor) in nogaPonudbe().
UML predstavitev naloge*
* Tudi razred Storitev (ter vsebovana razreda Enota in Cena), bi lahko predstavili v zgornjem razrednem diagramu.
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
- Napišite razred A z zaščiteno spremenljivko s in konstruktorjem.
- V razred A dopišite javni metodi m1 in m2. Metodi vračata string in nimata parametrov (glje primer glavnega programa spodaj).
- Napišite razred B, ki razširja razred A. Razredu dopišite konstruktor.
- V razredu B, prekrijte metodi nadrazreda – m1 in m2.
- Napišite razred C, ki razširja razred B. Razredu dopišite konstruktor.
- V razredu B, prekrijte metodi nadrazreda – m1 in m2.
- V razredu A, B in C označite metodi m1 in m2 tako, da bo izpis glavnega programama ustrezal rešitvam zapisanim v komentarju.
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
Napišite razred Kraj, ki vsebuje ime kraja in oznako kraja.
Napišite razred Kraji, ki vsebuje vsaj tri kraje (polje krajev) in razdalje med njimi (dvodimenzionalno polje).
Indeks kraja v polju (poloûaj v seznamu) predstavlja id kraja (celoštevilčno oznako).
Napišite naslednje metode:
- vrniRazdaljo(int id1, int id2), ki vrne razdaljo med dvema krajema.
- vrniIme(int id1), ki vrne ime mesta
- vrniKraj(int id1), ki vrne kraj
- vrniMaxRazdaljo(int &id1, int &id2), ki vrne preko reference id-ja mest, ki sta maksimalno oddaljena in vrednost te razdalje.
- vrniMinRazdaljo(int &id1, int &id2), metoda podobna prejšnji le da vrne minimalne vrednosti.
Napišite privzeti konstruktor, ki ustvari 3 kraje (napolni polje) in določi razdalje med njimi (mesta in razdalje si sami izmislite).
Napišite glavni program, ki omogoča preko menija klice metod razreda kraji.
Primer programa:
Menu
=========
1 … VNOS KRAJEV
2 … RAZDALJA MED KRAJEMA A IN B
3 … VRNI IME KRAJA ZA ID
4 … VRNI OZNAKO ZA ID
5 … MAKSIMALNA RAZDALJA
6 … MINIMALNA RAZDALJA
0 … IZHOD IZ PROGRAMA
=========
Izberi: 5
Kraja z maksimalno razdaljo:
Ajdovščina
Murska Sobota
Razdalja: 268 km
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
Napišite razred Stranka, ki ima lastnosti ime in datum zadnjega nakupa (Datum je razred, ki vsebuje dan, mesec in leto).
Iz razreda Stranka izpeljite razred Grosist, ki ima dodatno lastnost rabat (realno število).
Poskrbite da rabat ne more presegati 100 procentov in ne more biti manjši od 0.
V glavnem pogramu ustvarite primerk stranke in grosista, ter ju izpišite na ekran.
>> Poglej rešitev <<
n/a
Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II
Navodilo:
Dopolnite nalogo 4.2 tako, da:
- Iz razreda Limit izpeljite razred TransakcijskiRacun.
- V razredu TransakcijskiRacun imejte lastnost seznam_transakcij, ki bo hranila
- seznam vseh dvigov, pologov in poracunov obresti. Za seznam_transakcij uporabite
- statično polje nizov. Element seznama je podatek o eni transakciji (tip
- transakcije = dvig, polog, obresti).
- Primer izpisa transakcij:
Transakcije:
polog: 1000, stanje: 1000
dvig: 100, stanje: 900
dvig: 50, stanje: 850
obresti 5.5, stanje: 855.5
- Prekrijte metodi dvig in polog iz razreda Racun oz. LimitniRacun.
- Prekrijte metodo print(), ki naj izpise poleg stanja (stanje in stanje+limit) na računu tudi seznam vseh transakcij.
- Napisite testni programcek – dvig, polog, pripis obresti in izpis izberete iz menuja!
>> Poglej rešitev <<