Tank osztály

Írjunk egy tankot reprezentáló osztályt (MicroTank), mely képes más tankokkal harcolni!

Az osztály tagváltozói a következőek:

  • Életerő (hitPoints), mely egy egész szám 0 és 1000 között.
  • Támadóerő (attackRating), mely egy egész szám 1 és 200 között.
  • Védekezőerő (defenseRating), mely egy egész szám 0 és 200 között.
Ügyeljünk rá, hogy a tagváltozók private adattagok legyenek!

Valósítsuk meg az osztály metódusait:

  • Írjuk meg osztály konstruktorát, melyben kötelező megadni a tank támadó- és védekezőerejét! A kezdeti életerőt is lehessen megadni, de ne legyen kötelező (használjon default paramétereket: ha a programozó nem ad meg életerőt, akkor a tagváltozó kezdeti értéke 1000 lesz)!
  • Írjunk egy Repair() függvényt, mely 100 ponttal növeli a tank életerejét! Ügyeljünk rá, hogy 1000 fölé sosem kerülhessen az érték.
  • Írjunk egy Attack(MicroTank& otherTank) függvényt, mely támadást indít egy másik tank ellen! A függvény tartalma csakis akkor fusson le, ha a "saját" tankunk életereje nagyobb mint 0! A támadás hatására otherTank életereje csökkenjen (("saját" tankunk támadóértéke) - (otherTank védekezőereje)) értékkel! Ügyeljünk rá, hogy 0 alá nem csökkenhet a tank életereje ill. ha nagyobb otherTank védekezőereje mint a "saját" tankunk támadóereje, akkor ne változzon az életerő (ne fordulhasson elő, hogy támadás hatására növekszik otherTank életereje)!
  • Írjunk egy egyszerű main függvényt, amely létrehoz két tankot, amelyek közül az egyik megtámadja a másikat. Minden esemény után írjuk ki a tankok állapotát!






2008.02.01. 18:35:14 |  Permalink  |  Hozzászólások száma: 1  |  Tárgyszavak: Osztályok


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások


Gyenizse Sándor Gyenizse Sándor  (2012.11.09. 15:58:04)

Sziasztok! Nincs meg valakinek a forráskód? :)