ZADANIE 7. (07/04/2011)
------------------------
1) zdefiniowac klase abstrakcyjna Zwierz:
a) pola
- imie - wskazanie (const char*) - bez alokacji,
- nr - unikatowy numer kolejny zwierzaka,
- inne potrzebne.
b) konstruktor z parametrem typu (const char*) - imie,
wypisuje informacje o tym, ze tworzone jest nowe zwierze oraz jego numer.
c) metoda abstrakcyjna daj_glos().
2) zdefiniowac kilka (np. 3) klas pochodnych od Zwierz
(n.p.: Pies, Kot, Mysz, ...):
a) pola
- nr - unikatowy numer kolejny (oddzielnie dla pieska, kotka, myszki, ...)
pole MUSI miec taka sama nazwe jak w klasie bazowej,
- inne potrzebne,
- NIE WOLNO w klasach pochodnych definiowac pola imie (ani zadnego podobnego),
takie pole jest w klasie Zwierz, czyli kazdy zwierzak je juz ma.
b) konstruktor z parametrem (const char*) - imie
- wypisuje informacje o tym, ze tworzony jest nowy piesek (kotek, myszka)
oraz jego "pieskowy" ("kotkowy", "myszkowy") numer i imie,
- w polaczeniu z konstruktorem zwierza wypisuje cos w stylu
Nowy zwierz nr 3
Pies nr 2 o imieniu Azor
c) przedefiniowana metoda daj_glos wypisujaca cos w stylu
pies Azor (jest to pies nr 2 i zwierz nr 3) szczeka: hau, hau
d) w dokladnie jednej klasie pochodnej (np. Pies) zdefiniowac metode
aport() wypisujaca cos w stylu
pies Azor aportuje
3) zdefiniowac klase Zoo:
a) pola
- max_zwierzat - maksymalna liczba zwierzat w zoo,
- ile_zwierzat - faktyczna liczba zwierzat w zoo,
- Zwierzeta - tworzona operatorem new tablica wskazan (Zwierz*).
b) konstruktor z parametrem (int) okreslajacym maksynalna liczbe zwierzat w zoo,
c) metoda Jeden() - tworzy jednego zwierzaka (pieska, kotka, myszke).
Po wywolaniu metoda przedstawia uzytkownikowi programu mozliwe
zwierzeta do utworzenia oraz prosi uzytkownika o wybranie imienia zwierzaka
z przewidzianej w programie ustalonej listy (tablicy) imion.
Metoda zwraca wskazanie zwierzaka jako wynik swojego dzialania.
d) metoda Tworz() - zapelnia tablice Zwierzeta
wywolujac pewna liczbe razy metode Jeden().
d) metoda Prezentuj() - wszystkie zwierzeta daja glos a psy dodatkowo aportuja.
4) main() - tworzy obiekt typu Zoo dla kilku (np.5) zwierzatek.
Uruchamia dla tego obiektu metode Tworz() a nastepnie metode Prezentuj().
PUNKTACJA:
1p - klasa Zwierz
1p - klasy pochodne (wszystkie)
3p - klasa Zoo
1p - metoda Jeden()
1p - metoda Tworz()
1p - metoda Pokaz()
ZWRACAMY UWAGE:
- czy zwierzaki (pieski,kotki) dobrze sie numeruja
(pole nr ma wszedzie taka sama nazwe, a w daj_glos odwolujemy sie
do nr ze Zwierza i nr z klasy pochodnej),
- czy dostep do skladowych jest maksymalnie ograniczony
(private, protected, a nie wszystko public),
- czy kazda klasa ma destruktor, ktorego dzialanie JEST WIDOCZNE,
gdy program sie konczy.
Brak dowolnej z tych cech == strata punktu (calego).
Wyszukiwarka
Podobne podstrony:
lab7 zadanieAnaliza Matematyczna 2 ZadaniaZARZĄDZANIE FINANSAMI cwiczenia zadania rozwiazaneEZADANIE (11)zadanie domowe zestawZadania 1W 4 zadanie wartswa 2013Sprawdzian 5 kl 2 matematyka zadaniazadania1Zadania 2015 9Logika W8 zadaniaLogika troch teorii zadania06 Zadania z rozwiązaniamiidd47więcej podobnych podstron