Zadanie 1.
Napisać następujące klasy:
1. Żarówka. Ma publiczne pole moc typu int. Konstruktor umożliwia ustawienie wartości tego
pola. W przypadku nie podania wartości w konstruktorze przyjmuje się domyślnie 100.
2. Lampa. Mas dwa chronione pola typu Żarówka. Ma publiczną funkcję UstawMoc
ustawiającą moc obu żarówek na zadaną wartość. Ma funkcję Wyświetl wyświetlającą moc
żarówek na konsoli.
Przetestować na dowolnym przykładzie.
Na ocenę 3: napisać definicje obu klas, ze szkieletowymi definicjami funkcji (zapewniaj
ącymi
kompilację programu, ale nie posiadającymi funkcjonalności)
Na ocenę 4: napisać definicje konstruktora klasy Żarówka oraz funkcji UstawMoc i Wyświetl w
klasie Lampa.
Na ocenę 5: sprawdzać w funkcji UstawMoc, czy moc nie jest większa niż 100, jeśli tak – rzucić
wyjątek.
Zadanie 2.
Napisać następujące klasy:
1. Opona. Ma pole chronione przebita. Konstruktor ustawia wartość tego pola na 0. Ma
wirtualną funkcję Przebicie przyjmującą argument średnica (typu int) uszkodzenia,
ustawiające pole przebita na 1 dla argumentu powyżej 10 i zwracająca wartość tego pola.
2. OponaBezdętkowa. Dziedziczy po klasie Opona. Ma własną implementację funkcji
Przebicie, ustawiającą pole przebicie na 1 dla argumentu powyżej 20 (wartość zwracana –
jak powyżej)
Przetestować na dowolnym przykładzie.
Na ocenę 3: napisać definicje obu klas, ze szkieletowymi definicjami funkcji (zapewniaj
ącymi
kompilację programu, ale nie posiadającymi funkcjonalności)
Na ocenę 4: napisać definicje konstruktora klasy Opona oraz funkcji Przebicie w klasie bazowej i
pochodnej.
Na ocenę 5: sprawdzać w funkcji Przebicie, czy argument nie jest spełniony, jeśli tak – rzucić
wyjątek.