2
Zdefiniuj klasę Data. Klasa powinna przechowywać w formacie dzień, miesiąc, rok i zawierać konstruktor i podstawowe metody odczytujące poszczególne składowe daty i umożliwiające zmianę daty. Należy również zdefiniować dodatkowe metody określające ( Uwaga data oznacza datę zapisanąw polach obiektu wywołującego, natomiast datal jest przekazywana jako parametr metody - jako obiekt hib osobne wartości dzień, miesiąc . rok):
4a czy data jest wcześniejsza od datal
4b. czy rok daty jest rokiem przestępnym
4c. ile dni jest w miesiącu wskazywanym przez data
4d. czy data jest poprawna
4e. zmień data na dzień późniejszą ( wcześniejszą)
4f. zmień data na późmejszą ( wcześniejszą) o miesiąc 4g. zmień data na późniejszą ( wcześniejszą) o rok
Uwaga: Jaka jest różnica między tymi problemami c, d, e ?
4h. oblicz różnicę między data a datal przy założeniu, że data >= datal 4i. Możemy określić na jaki dzień tygodnia wypadnie określona data obliczając resztę z dzielenia przez 7 (jeśli ta reszta wychodzi ujemna należy do niej dodać 7 ) następującego wyrażenia :
l2.6m-0.2j+d +y+Ly/4Rc/4j-2c
gdzie: d - numer dnia miesiąca (1.2...),
m - numer miesiąca w roku (marzec=l.kwiecień=Z... ,grudzień=10.styczeń i luty są traktowane jako
11 i 12 miesiąc poprzedniego roku ),
y - dwie ostatnie cyfry roku,
c - dwie początkowe cyfry roku (stulecie),
LxJ - oznacza cześć całkowita z x.
Uwaga: Zależność jest słuszna dla lat 1582 - 4902.
wydrukuj słownie dzień tygodnia przypadający na określona datę.
Pytanie dodatkowe : jakim dniem zaczyna się tydzień ?
5. Przetwarzanie tablic jednowymiarow ych.
5a. Zdefiniuj klasę Tablica. Obiekty tej klasy powinny móc zapamiętać do 100 liczb całkowitych ( oczywiście liczba pamiętanych elementów jest zmienna). Podstawowe metody ( konstruktor)', gettery i settery ) każdy może opracować sobie sam. My skupimy się na ciekawszych metodach : suma wartości elementów tablicy - wartość maksymalna w tablicy
element maksymalny (zauważ różnicę między tym zadaniem a poprzednim)
czy podana (jako parametr ) wartość występuje na którejś z k (k<=liczba elementów) początkowych
pozycji tablicy
czy tablica jest różnowartościowa ( porównaj rozwiązanie bezpośrednie i rozwiązanie wykorzystujące poprzednią metodę
usuń wszystkie wystąpienia podanej (jako parametr) wartości x, kolejność pozostawionych elementów może ulec zmianie
wyeliminuj wszystkie powtórzenia elementów tablicy itd. itp.
Sb. Zdefiniuj klasę TablicaUporządkowana ( niemalejąco). przy zachowaniu założeń z 5a. Skupimy się na metodach , które są wyraźnie inne niż te dla zwykłej tablicy, wstaw element o podanej (jako parametr) wartości usuń wskazany przez podanie indeksu element
usuń wskazany przez podanie wartości element (jeśli takich jest więcej usuwaj ostatiu ) usuń wszystkie wystąpienia wartości x