Programowanie obiektowe 2 – Kolokwium
Transkrypt
Programowanie obiektowe 2 – Kolokwium
Studia zaoczne, 2013/2014 Zestaw B Programowanie obiektowe 2 – Kolokwium Zadanie 1 Utworzyć klasę bazową Osoba (imie, nazwisko, pesel) dziedziczące z niej klasy Student (nrIndeksu) i Rencista (wysokoscRenty). Wszystkie klasy powinny zawierać konstruktory, funkcje do wczytywania i wypisywania. Program testujący powinien: · utworzyć 3 obiekty odpowiednio klasy Osoba, Student i Rencista, · wczytać dane dla poszczególnych obiektów i obsłużyć wyjątki związane z niepoprawnymi danymi, · wypisać dane tych obiektów. MOŻNA KORZYSTAĆ Z KONTENERÓW Z BIBLIOTEKI STL. Zadanie 2. Opracować szablon klasy reprezentującej listę jednokierunkową z jednym parametrem oznaczającym typ danych przechowywanych w węzłach listy. Szablon ma zawierać: Definicję własnego, prywatnego typu węzła, Konstruktor inicjujący listę pustą, Konstruktor inicjujący listę z jednym węzłem danych, Destruktor, Funkcję składową print, przeznaczoną do drukowania listy. Operator << przeznaczony do wstawiania elementu do listy Operator << przeznaczony do konkatenacji list w postaci Lista& operator<<(Lista&), Przetestować opracowaną klasę dla następującego programu: int main() { Lista<double> L1, A1(1.75), B1(-2.45), C1(12.4); L1 << A1 << B1 << C1 << A1; L1.print("Lista 1: liczby typu double"); Lista<double> L2(0.75); L2 << L1; L2.print("Lista 2: liczby typu double"); return 0; } Zadanie 3. Opracuj klasę Tablica z dynamiczną alokacją pamięci. Klasa powinna umożliwiać przechowywanie zestawu wartości typu double. Inicjowanie obiektów typu Tablica: Tablica a; // tworzona jest tablica pusta Tablica b(10, 0); // tworzona jest tablica 10 elementów o wartości 0 Tablica c(T, 5); // tworzona jest tablica o pięciu elementach // zainicjowana tablicą T Klasa powinna posiadać konstruktor kopiujący, przeciążony operator przypisania, operator indeksowania. Napisz krótki program testujący opracowaną klasę.