Projekty JAVA
Transkrypt
Projekty JAVA
I projekty z Programowania w Javie I Tematy do wyboru: Każdy projekty należy zaimplementować wykorzystując wszystkie poniższe własności: 1. idee programowania obiektowego 2. mechanizmy JAVY takie, jak dziedziczenie, interfejsy, klasy i metody abstrakcyjne 3. obsługa sytuacji wyjątkowych oraz w niektórych projektach mechanizm wątków. 1. Macierze - standard :-) a. dodawanie, odejmowanie, mnożenie macierzy 2. metoda zwracająca wyznacznik macierzy 3. metoda zwracająca macierz odwrotną 4. metoda zwracająca rząd macierzy 5. Filtr tekstowy dla plików tekstowych a. zliczanie znaków, słów i wierszy 6. numerowanie wierszy pliku 7. usuwanie pustych wierszy 8. zamiana małych liter na duże 9. zamiana dużych liter na małe 10.zamiana znaków tabulacji na określoną liczbę spacji 11.zliczanie krotności wystąpienia podanego ciągu znaków 12.zamiana podanego ciągu znaków na inny podany ciąg 13.usunięcie z pliku podanego ciągu znaków, wypisanie wierszy (oraz ich numerów) zawierających podany ciąg znaków 14.wypisanie n-początkowych wierszy pliku 15.wypisanie n-końcowych wierszy pliku 16.konwersja polskich znaków (dla standardów kodowania ISO-8859-2, Windows-1250, Unicode) 17.Program powinien tworzyć nowy plik wynikowy, pozostawiając plik wejściowy bez zmian 18.Kalkulator wierszowy Program powinien spełniać funkcje kalkulatora obliczającego wartość wyrażenia podanego z klawiatury jako ciąg znaków. Załóżenia: a. cztery podstawowe działania na liczbach rzeczywistych 19.reszta z dzielenia 20.nawiasy wielopoziomowe 21.kilka wybranych funkcji (np. pierwiastkowanie, potęgowanie, itp. ) 22.Baza danych Program ma spełniać funkcje prostej bazy danych obługiwanej z konsoli (menu tekstowe): a. dane przechowywane w pliku tekstowym (zapis i odczyt) 23.przeglądanie zawartości bazy 24.dodawanie rekordu na końcu bazy 25.modyfikacja wybranego rekordu 26.usuwanie wybranego rekordu 27.wyszukiwanie rekordów według podanego kryterium 28.sortowanie rekordów według wybranego kryterium 29.Quiz - przeprowadzanie testów a. program powinien wczytywać z pliku pytania wraz z odpowiedziami i przeprowadzać egzamin 30.pop rzeprowadzeniu testów program powinien podsumować wyniki i na podstawie zadanych kryteriów wydać ocenę 31.program powinien mieć możliwość tworzenia i edycji plików z pytaniami i odpowiedziami 32.Analizator liczb a. program powinien analizować liczby podawane przez użytkownika i określający jakie to liczby: pierwsze, doskonałe, zaprzyjaźnione , Fibonacci'ego, Amstrong'a. 33.program powinien także umożliwiać generowanie liczb podanych rodzajów leżących w podanym przez użytkownika przedziale . 34.Wskazówki: 1. liczba pierwsza, to liczba naturalna większa od 1, podzielna tylko przez 1 i przez samą siebie 35.liczby zaprzyjaźnione, to dwie liczby naturalne, z których każda jest równa sumie podzielników właściwych drugiej liczby (np. 220 i 284, tzn. 220 jest sumą podzielników liczby 284, a 284 jest sumą podzielników liczby 220); 36.liczby Fibonacci'ego to liczby należące do ciągu: 1, 1, 2, 3, 5, 8, 13, 21, ..... (dwie pierwsze liczby to jedynki, każda następna jest sumą dwóch poprzednich); 37.liczba Amstrong'a to liczba równa sumie sześcianów swoich cyfr, np. 153 = 1^3 + 5^3 + 3^3 38.Tekstowa grafika a. Program ma mieć możliwość tworzenia i rysowania takich obiektów graficznych jak: odcinek, okrąg, trójkąt, czworokąt, n-kąt, w trybie tekstowym (za pomocą symbolu *). 39.Obiekty "graficzne" powinny być skojarzone z odpowiednią kanwą reprezentującą układ współrzędnych, obiekty mogą być do niej dodawane, usuwane. 40.Obiekty powinny być widoczne po narysowaniu odpowiedniej kanwy. 41.Kalendarz akademicki a. Program ma wyświetlać kalendarz na podany rok z zaznaczeniem dnia bieżącego. 42.Dodatkowo projekt ma mieć możliwość wyświetlania wybranego przez użytkownika miesiąca 43.Dni wolne, rektorskie i święta powinny znaleźć się w osobnym pliku. 44.Należy dodać funkcjonalność określenia, na podstawie daty początku i końca semestrów i podanych dni wolnych, liczby poszczególnych dni tygodnia w danym semestrze, np. pon 15, wto - 13, itd. Forma końcowa projektu • • • • • • Program powinien wykorzystywać JDK 1.5 bez dodatkowych bibliotek. Projekt powinien zawierać klasę testującą - TestMain Do projektu powinna być załączona dokumentacja wykonana w javadoc Należy stworzyć pliki wsadowe compile.bat (kompilacja projektu) i run.bat (uruchomienie projektu) w celu łatwego skompilowania/uruchomienia projektu. Projekty są sprawdzane wyłącznie !!! na zajęciach do dnia 29.11.2006 (grupy środowe), do dnia 30.11.2006 (grupy czwartkowe) oraz do dnia 01.12.2006 (grupy piątkowe). Dodatkowo, podczs kontroli projektów, będzie trzeba dopisać "fragment kodu" w celu sprawdzenia samodzielnośći wykonania projektu. Powodzenia !!! Dariusz Wardowski, 30.10.2006 [email protected] www.math.uni.lodz.pl/~wardd