wtorek, 17 marca 2015

Tydzień 4: klasy

Ćwiczenia

  1. Zdefiniuj klasę Pracownik (podobnie do klasy Osoba z wykładu, dodając jeszcze tekstową informację o zajmowanym przez pracownika stanowisku). Następnie zdefiniuj klasę Firma, która przechowuje w tablicy spis wszystkich pracowników (możesz założyć, że liczba pracowników nie przekracza 100). Zdefiniuj metody dodawania nowych pracowników do firmy oraz wypisywania aktualnego spisu pracowników. Zastanów się, jak przy tym ostatnim zadaniu rozdzielić odpowiedzialności pomiędzy obie klasy.
  2. Zdefiniuj klasę opisującą datę. Zastanów się nad wyborem wewnętrznej reprezentacji dat. Zdefiniuj metody pozwalające na odczytywanie bieżącej daty i przestawianie jej o jeden tydzień w przód i w tył. Zadbaj o dobranie odpowiednich modyfikatorów dostępu do składowych.

Laboratorium

  1. Napisz klasę Osoba. Każda osoba ma imię, nazwisko oraz płeć. W innej klasie napisz program, który wczytuje listę 10 osób, a następnie wypisuje ich dane w odwrotnej kolejności. Skompiluj i uruchom program a) pod Eclipse b) z linii komend.
  2. Zmień klasę Osoba z poprzedniego zadania tak, aby każda osoba miała matkę i ojca. Stwórz kilka osób i powiązań pomiędzy nimi. Dodaj metodę, która zwraca imię i nazwisko ojca lub napis „Nieznany”, jeśli referencja do ojca jest nullem. Dodaj metodę, która przyjmuje parametr typu Osoba i zwraca informacje, czy podane osoby mają tę sama matkę.
  3. Utwórz klasę Ulamek reprezentującą ułamek zwykły. Klasa ma udostępniać operacje dodawania, odejmowania, mnożenia, dzielenia oraz wypisywania ułamków (metoda toString()). Ułamki powinny być przechowywane w postaci uproszczonej (zadbaj o to w konstruktorze). W innej klasie napisz program, który wczyta 10 ułamków ze standardowego wejścia, a następnie policzy ich sumę oraz iloczyn.

 Praca domowa nr 4

Do wyboru: zadanie 1+2 lub zadanie 3.

Rozwiązanie należy wysłać mailem. W temacie wiadomości powinien znaleźć się ciąg PO oraz numer pracy domowej (tutaj: 4). Pliki źródłowe powinny być spakowane zip-em. Nazwa pliku powinna zawierać imię i nazwisko autora.

Brak komentarzy:

Prześlij komentarz