n/a

PROG2: Vaja04: N02: Prekrivanje metod v c++ (LimitniRacun.cpp)

Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II

Navodilo:

  1. Naredite razred Racun, ki bo imel lasnosti ime_osebe, stanje in mesečno obrestno stopnjo za pozitivno stanje (procent).
  2. Pri vseh lasnostih napišite set in get metode. Napišite še metodo print.
  3. Razredu dodajte metodi polog in dvig. Pri metodi dvig, bodite pozorni, da po dvigu stanje ne bo negativno. Dodaj še metodo poracunObresti, ki doda stanju vrednost obresti za en mesec.
  4. Iz razreda Racun izpeljite razred LimitniRacun, ki ima dodatno lasnost limit in mesečno obrestno stopnjo za negativno stanje.
  5. Prekrijte metodo dvig(double vsota). Pri metodi dvig, bodite pozorni, da stanje + limit ne bo manjše kot je znesek dviga.
  6. Prekrijte metodo poracunObresti, tako da v primeru negativnega stanja, stanje zmanjšamo z negativnimi obrestmi.
  7. Napišite testni programcek – dvig, polog, pripis obresti in izpis izberete iz menuja!

>> Poglej rešitev <<


n/a

PROG2: Vaja04: N01: Nadrazredi in podrazredi

Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II

Navodilo:

  1. Napišite razred Lik, ki bo imel celoštevilčni zaščiteni lasnosti x in y.
  2. Konstruktur (privzeti, kopirni, pretvorbeni)
  3. Detruktor
  4. Napišite javne metode: setX, getX, setY in getY za obe lastnosti.
  5. Javno metodo print(), ki izpiše na ekran podatke o Liku.
  6. Javno metodo obseg(), ki bo na ekran izpisala obseg lika.
  7. Javno metodo premik(int dx, int dy), ki bo premaknila x in y za vrednost dx in dy.
  8. Iz razreda izpeljite razred Krog, ter dodajte lastnost radij. Prekrijte metodi obseg in print.
  9. Iz razreda izpeljite razred Pravokotnik, ter dodajte lastnost sirina in visina. Prekrijte metodi obseg in print.
  10. V komentar naloge zapišite vsaj tri lastne primere nadrazrede in podrazreda, npr.: Oseba – ätudent (Osebi dodamo vpisno številko)

>> Poglej rešitev <<


n/a

PROG2: Vaja03: N02: Konstantne metode (v c++) – #2

Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II

Navodilo:

Napišite razred izdelek, ki bo vseboval lasnosti tipa cena, teza (sta vsebovana razreda) in ime izdelka (string).

Razred cena ima lastnost cena, ter metode setCena, getCena(), getCenaSit() in izpis().

Razred teza ima lastnost teza in statično lastnost skupnaTeza, ter metode setTeza, getTeza(), izpis() in

Statično metodo getSkupnaTeza, ki vrne skupno težo vseh ze ustvarjenih primerkov razreda teza.

Razred Izdelek naj ima se metodi podrazitevProcent(double procent) in cenaNaKg().

Vsem metodam, ki menite da so primerne za konstantne dodajte lastnost const.

Pričujoči glavni programček dopolnite s petimi različnimi izdelki.

>> Poglej rešitev <<


n/a

PROG2: Vaja03: N01: Konstantne metode (v c++)

Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II

Navodilo:

(spisal sem ga sam, ker sem ga pozabil dodat, ko sem reševal to nalogo)
Napiši razred A, ki ima:

Napiši razred B, ki ima:

Napišite razred Barva, ki vsebuje:

Napišite razred C, ki vsebuje:

Primerno označite konstantne metode.

V glavnem programu vključite SAMO potrebne datoteke/razrede in demonstrirajte:

>> Poglej rešitev <<


n/a

PROG2: Vaja02: N02: Pisanje razredov v c++ -metoda toString()

Avtor: Sonicelo | 01 May 2010 | Ni ni komentarjev
Kategorija: PROG II

Navodilo:

  1. Napišite razred Pravokotnik, ki bo imel celoštevilčni lasnosti visina in sirina.
  2. Konstruktur (privzeti, kopirni, pretvorbeni (iz kvadrata v pravokotnik – en int parameter))
  3. Destruktor
  4. Napišite javne metode: set in get za obe lastnosti
  5. Javno metodo izpis, ki izpiše na ekran podatke o pravokotniku.
  6. Metodo int primerjaj(Pravokotnik druga) ki prejme drug pravokotnik ter vrne 0 (če sta ploščini pravokotnikov enaki), -1 (ploščina manjša od drugega pravokotnika ), 1 (ploščina večja od drugega pravokotnika),
  7. V glavnem programu omogočite vnos dveh Pravokotnikov in nato izpiše tistega, ki je večji drugače izpiše oba.
  8. Napišite še metodo toString, ki vrne opis Pravokotnika v stringu.

Zapišite tudi definicijo razreda (Pravokotnik.h)!

>> Poglej rešitev <<


n/a

PROG2: Vaja02: N01: Pisanje razredov v C++ (Met.cpp)

Avtor: Sonicelo | 01 May 2010 | 2 komentarjev
Kategorija: PROG II

Navodilo:

Napiši razred Met, ki ima metode:

>> Poglej rešitev <<


n/a

IČR: 1. Domača naloga – 4 v vrsto

Avtor: Dino Zaver | 13 April 2010 | Ni ni komentarjev
Kategorija: IČR

Navodilo:

Za nalogo morate napisati igrico ‘4 v vrsto’. Igra mora biti napisana v programskem jeziku C++ z MFC! Zahteve za igro so:
- namenjena dvema človeškima igralcema.
- igralca igrata s krogci: vsak igralec ima svojo barvo krogca!
- na začetku naj bo možno izbrati igralca in poljubno barvo za krogec!
- igralno polje mora biti v velikosti 6 vrstic in 7 stolpcev.
- igralno polje naj bo fiksne velikosti.
- celotno polje IN krogci morajo biti izrisani!! (polje, realizirano z gumbi ali slikami ali kako drugače NE šteje!).
- na polju se morajo loviti miškini kliki (tako kot pri igri Križci-Krožci)
- omogočen naj bo izpis obvestil ob zmagi ali porazu ali neodločenem izidu.
- možnost resetiranja med igro (Reset Game).
- grafični vmesnik naj bo preprost in intuitiven za uporabo!

Pravila igre:
- z miško igralca izmenično polnita polje s krogci.
- krogci v stolpcu ‘padajo’.
- igralec zmaga, ko zbere 4 svoje krogce vodoravno ali navpično ali po diagonali.

>> Poglej rešitev <<


n/a

IČR: 3. Vaja – MFC igrica ‘Hitri prsti’

Avtor: Dino Zaver | 09 April 2010 | Ni ni komentarjev
Kategorija: IČR

Navodilo:

Po uspešnem seznanjanju z osnovami knjižnice MFC je čas, da spoznamo še nekaj novih grafičnih elementov. Te elemente boste uporabili v preprosti igrici ‘Hitri prsti’. Pri igrici ‘Hitri prsti’ vam naj računalnik naključno izbira znake iz tipkovnice in jih naj izpisuje na pogovorno okno. Naloga za uporabnika pa je pritiskanje tipk, ki ustrezajo izpisanim znakom. Grobe zahteve za igrico so:
- naključen izpis znakov na pogovorno okno (samo črke in številke!)
- znaki se izpisujejo v določenem časovnem intervalu
- igra naj omogoča nastavljanje časovnega intervala z drsnikom (slider)
- prikaz trajanja časovnega intervala s ‘progress bar’
- igra naj ima opcijo Start in Stop
- sproti naj izpisuje število pravilno izbranih znakov, število zgrešenih znakov, število zamujenih znakov in izbran znak.

Pri izdelavi igrice boste potrebovali:
- pridobljeno znanje iz prvih dveh vaj
- MFC razred CProgressCtrl
- MFC razred CSliderCtrl
- MFC razred CEdit
- MFC razred CString
- MFC sporočilo WM_TIMER
Za opise izbranih razredov in njihovih metod uporabite pomoč MSDN.

>> Poglej rešitev <<


10/10

RA: N03: UTF-8

Avtor: Ali Gator | 27 March 2010 | Ni ni komentarjev
Kategorija: RA

Navodilo:

Napišite program (npr. v C++), ki bo kodiral in dekodiral znake abecede Unicode v kodiranju UTF-8.

Znakov iz Unicode, ki jih UTF-8 kodira, je 1114111, tj. 10FFFF (hex), oz. max. 128 bitov. Pri tem kodi 0xFF in 0xFE nista dovoljeni in ob dekodiranju takšne kode izpišite opozorilo o napaki.

Predstavitev UTF-8 kode:
1) V kolikor je prvi bit 0, sledi sedem bitov za kodo (tj. enako prvim 128 kodam iz ASCII).
2) V kolikor je prvi bit 1, pomeni število vodilnih bitov 1 do prvega bita 0, dolžino kode v bajtih. Nato se kodirajo bolj obteženi biti kode, šele nato manj obteženi del, po spodnji tabeli:

Unicode Bajt 1 Bajt 2 Bajt 3 Bajt 4 Primer
U+0000–U+007F 0xxxxxxx ‘$’ U+0024
00100100
0x24
U+0080–U+07FF 110yyyxx 10xxxxxx ‘¢’ U+00A2
11000010,10100010
0xC2,0xA2
U+0800–U+FFFF 1110yyyy 10yyyyxx 10xxxxxx ‘€’ U+20AC
11100010,10000010,10101100
0xE2,0x82,0xAC
U+10000–U+10FFFF 11110zzz 10zzyyyy 10yyyyxx 10xxxxxx U+024B62
11110000,10100100,10101101,10100010
0xF0,0xA4,0xAD,0xA2

PRIMER (vnos črke v desetiškem številskem sestavu, izpis kode v binarnem)

Kodiranje
Vpišite Unicode znak: 65
UTF-8 koda Unicode je: 01000001

Dekodiranje
Vpišite UFT-8 kodo: 01000001
Koda predstavlja znak št.: 65

>> Poglej rešitev <<


4/4

URG: 2.vaja: Vsebnostni test

Avtor: Ali Gator | 22 March 2010 | Ni ni komentarjev
Kategorija: URG

Navodilo:

Implementirajte vsebnostni algoritem točka-mnogokotnik z računanjem kotov.

Vhod predstavljata mnogokotnik, ki ne vsebuje lukenj, in točka p, za katero preverjamo vsebnost.

Izhod algoritma nam pove:

- ali točka leži v notranjosti mnogokotnika,

- ali točka leži zunaj mnogokotnika,

- ali pa točka leži na mnogokotniku (bodisi na robu bodisi na oglišču).

Algoritem poteka tako, da potegnemo poltrak od p do vsakega oglišča mnogokotnika. Nato izračunamo kote med vsakim parom poltrakov, kote pa seštevamo. Če je vsota vseh kotov enaka 2pi , je točka v notranjosti. Če je vsota kotov enaka 0, leži točka zunaj mnogokotnika. Za preverjanje enakosti uporabite toleranco epsilon.

Robni primeri:

- točka p leži na točki mnogokotnika,

- točka p leži na robu mnogokotnika.

Več o algoritmu najdete v knjigi Algoritmi računalniške geometrije (Žalik).

Naloga je vredna 4 točke.

>> Poglej rešitev <<


Arhiv

Oblak

 

rss

Vsevedno okno

Kategorije

Nekaj za preživetje:

Blogroll