semetr letni 2013/2014
Ćwiczenia: środy 12.15-13.45, sala 3120
Laboratorium: środy 14.15-15.45, sala 2041
środa, 26 marca 2014
Film: Inheritance, Polymorphism, & Testing
Polecam ciekawy wykład o programowaniu bez if-ów, między innymi na przykładzie wyrażeń.
Etykiety:
film
Tydzień 6: dziedziczenie
Ćwiczenia
Chcemy zdefiniować klasę obiektów reprezentujących wyrażenia arytmetyczne jednej zmiennej rzeczywistej (x). Interesują nas następujące operacje:- policzenie wartości w zadanym punkcie,
- policzenie (symboliczne) pochodnej,
- policzenie (numeryczne) całki oznaczonej,
- wypisywanie.
- stałe liczbowe,
- wystąpienia zmiennej x,
- operatory arytmetyczne (dwuargumentowe): +, -, *, /, ...
- funkcje jednoargumentowe: sin, cos, lg, ...
- nawiasy okrągłe.
Laboratorium
Zaprojektuj hierarchię klas opisujących pojazdy komunikacji miejskiej. Wyraź w tej hierarchii nastepujące fakty:- wszystkie pojazdy komunikacji miejskiej (k. m.) są pojazdami,
- komunikacja miejska używa tramwajów i autobusów,
- pojazdy są garażowane w zajezdniach,
- każdy pojazd zna swoją szybkość maksymalną,
- każdy pojazd k. m. zna swój numer,
- każdy pojazd k. m. zna swoją zajezdnieę,
- każdy tramwaj jest zestawem 1 do 3 wagonów (i wie, z ilu wagonów się składa),
- każdy autobus wie, ile zużył paliwa w bieżącym miesiącu,
- każda zajezdnia zna swoja nazwę,
- każda zajezdnia wie, jakie pojazdy do niej należą,
- każda zajezdnia ma nazwę.
Praca domowa nr 6
Zadanie o tramwajach. Termin oddania: 9 kwietnia 2014 r.
Etykiety:
praca domowa 6 (tramwaje),
zajęcia
środa, 19 marca 2014
Tydzień 5: klasy
Ćwiczenia
Laboratorium
Zaimplementuj klasę Wielomian. Wielomian powinien mieć:- konstruktor bezargumentowy tworzący wielomian zerowy;
- konstruktor tworzący jednomian;
- konstruktor tworzący wielomian na podstawie tablicy współczynników; nie marnujemy pamięci – trzymamy tablice długości stopień wielomianu + 1;
- metodę liczącą wartość wielomianu w punkcie;
- metody dodaj(Wielomian) i odejmij(Wielomian) zwracającą nowy wielomian będący sumą (różnicą) pierwszego i drugiego argumentu;
- (dla chętnych) metodę pomnóż(Wielomian) zwracającą iloczyn pierwszego i drugiego argumentu.
java main.Program 1 0 1 + 1 1 -1 1
daje w wyniku
2+x^1+x^3
Praca domowa nr 5
Zadanie o wielomianie. Termin oddania: 26 marca 2014 r.
Etykiety:
praca domowa 5 (wielomian),
tablice,
zajęcia
środa, 12 marca 2014
Tydzień 4: proste klasy
Ćwiczenia
- 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 by przechowywała 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.
- 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.
- Zdefiniuj klasę Liczba, która przechowuje w tablicy cyfry liczby dziesiętnej. Zdefiniuj operacje wypisywania liczby, nadawania jej wartości (w postaci parametru konstruktora będącego napisem) oraz mnożenia przez liczbę typu int. W przypadku gdy w czasie mnożenia okaże się, że tablica jest za mała, procedura mnożąca powinna kopiować jej zawartość do większej. Zdefiniuj wreszcie metodę silnia, która policzy silnię zadanej jako parametr liczby typu int.
Laboratorium
Na forum Szybkość programów w Javie w moodle'u należy umieścić wynik porównania programu napisanego w Javie oraz w innym języku programowania. Termin oddania: 26 marca 2014 r. To zadanie warte jest jeden punkt.- Skompiluj i uruchom w Eclipse program HelloWorld z poprzednich zajęć. Podepnij w Eclipse źródła Javy.
- 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.
- 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ę.
- 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. Skompiluj i uruchom program a) pod Eclipse b) z linii komend.
Praca domowa nr 3
Do wyboru zadanie 2+3 lub zadanie 4. Termin oddania: 19 marca 2014 r.
Etykiety:
java,
praca domowa 3 (klasa),
praca domowa 4 (szybkość/forum),
tablice,
zajęcia
środa, 5 marca 2014
Tydzień 3: modelowanie obiektowe cd, wstęp do Javy
Ćwiczenia
Model dziedziny dla systemu rejestracji kurdli.Laboratorium
- Skompiluj i uruchom na swoim komputerze program HelloWorld.
- Napisz program wypisujący na ekran wszystkie argumenty z wiersza polecenia.
- Napisz program wyliczający wartość największego wspólnego dzielnika dwu zadanych wartości.
- Napisz program wypisujący rozkład zadanej liczby naturalnej większej od zera na czynniki pierwsze.
- Napisz program wypisujący pierwszych n liczb Fibonacciego.
- Napisz program wypisujący pierwszych n liczb pierwszych. Użyj sita Eratostenesa.
Praca domowa nr 2
Do wyboru jedno zadanie spośród: zadanie 3, zadanie 4, zadanie 5, zadanie 6.
Etykiety:
praca domowa 2,
zajęcia
Subskrybuj:
Posty (Atom)