Projekt zaliczeniowy - lista projektów
Transkrypt
Projekt zaliczeniowy - lista projektów
Lista projektów z przedmiotu „Podstawy Programowania” Każdy projekt powinien być zrealizowany w oparciu o dynamiczne struktury danych (listy jednokierunkowe, dwukierunkowe lub pochodne). Termin wykonania – ostatnie zajęcia w semestrze. 1. Biblioteka Program umożliwia zarządzanie biblioteką. Książki w bazie powinny być posortowane alfabetycznie wg. nazwiska autora. Baza danych powinna zawierać następujące informacje o książce: nr katalogowy, autor; tytuł; kategorię, datę wydania; wydawnictwo, nr ISBN, dostępność. Dodatkowo biblioteka powinna umożliwiać przechowywanie danych klientów: imię i nazwisko, adres, telefon. Program powinien umożliwiać: • dodawanie, edycję, kasowanie, wypisywanie wszystkich pozycji, • wyszukiwanie pozycji (po autorze, tytule i kategorii); • wypożyczenie i zwrot książki. • zapisanie do pliku tekstowego danych o książkach. 2. Dział kadr Program umożliwia zarządzanie bazą danych pracowników firmy. Dane w bazie powinny być posortowane alfabetycznie wg. nazwiska pracownika. Baza danych powinna zawierać następujące informacje o pracowniku: nazwisko; imię; nr pesel; rok urodzenia; data rozpoczęcia pracy; pensja. Program powinien umożliwiać: • dodawanie, edycję, kasowanie, wypisywanie wszystkich osób, wyszukiwanie osób (po dwóch dowolnych polach); • zapisanie do pliku tekstowego danych osób zatrudnionych w firmie od podanej daty, • zapis do pliku tekstowego danych osób zarabiających więcej od podanej kwoty; • zapis do pliku tekstowego danych osób, które zarabiają więcej niż średnia zarobków osób zatrudnionych w firmie. 3. Basic Commander Program do zarządzania plikami w systemie operacyjnym (coś w rodzaju Norton Commandera i pochodnych). Program ma umożliwiać: • przeglądanie katalogów i plików na dysku; • przechodzenie między dwoma oknami klawiszem TAB; • zaznaczanie plików • kopiowanie plików • przenoszenie plików • usuwanie plików • zmianę nazwy plików 4. Gra przygodowa Prosta przygodowa gra tekstowa odbywająca się na wirtualnym terenie. Gracz może poruszać się w 4 kierunkach (W,E,N,S). Gracz ma ustaloną liczbę punktów życia, siłę oraz ekwipunek: broń i zbroję. W niektórych lokalizacjach gracz może spotkać przeciwników, z którymi należy walczyć, aby zdobyć lepszą broń, zbroję, mikstury dodające punkty do życia i siły (działające czasowo np. przez kilka ruchów). Za pokonanie przeciwników można uzyskać punkty doświadczenia wymieniane na punkty życia lub siły. Walka z przeciwnikiem odbywa się wg scenariusza: • losowana jest wartość do której dodajemy siłę oraz modyfikator broni dla gracza • losowana jest wartość do której dodajemy siłę oraz modyfikator broni dla przeciwnika • jeżeli gracz wygrał potyczkę to od punktów życia przeciwnika odejmowana jest różnica między obu wynikami pomniejszona o modyfikator zbroi przeciwnika • jeżeli gracz przegrał potyczkę to od punktów życia gracza odejmowana jest różnica między obu wynikami pomniejszona o modyfikator zbroi gracza • walka kończy się, gdy jeden z przeciwników osiągnie zerowy poziom punktów życia. • po każdej potyczce jest możliwość ucieczki gracza z podanej lokalizacji. Przeciwnicy mogą (ale nie muszą) zmieniać lokalizację po każdej turze. 5. Słownik Celem programu jest stworzenie słownika polsko-angielskiego i angielsko-polskiego. Użytkownik podaje słowo w danym języku, a program wyszukuje jego tłumaczenie, Zbiór dostępnych słów przechowywany jest w pliku tekstowym. Każde słowo ma tylko jedno tłumaczenie, słowa nie mogą się powtarzać w żadnym języku. Do realizacji należy wykorzystać dwie listy powiązane ze sobą. Listy powinny przechowywać słowa w porządku alfabetycznym. Program powinien umożliwiać: • dodawanie wyrazów zawartych w słowniku; • edycję wyrazów zawartych w słowniku; • kasowanie wyrazów zawartych w słowniku. • zapisywanie do pliku statystyki wykorzystania programu w postaci listy najczęściej tłumaczonych słów w danym języku (liczba słów jest zadawana w programie). 6. Poker Gra z komputerem w pokera. Losowanie kart, podejmowanie decyzji komputera o wymianie kart i podbiciu stawki może być zaimplementowane przy pomocy funkcji pseudolosowej, chociaż można zastosować trochę „sztucznej inteligencji”. Gracz widzi tylko swoje karty a po każdej partii ma możliwość zobaczenia kart przeciwnika. Gra toczy się na wirtualne pieniądze. Wchodząc do gry gracz ma ustaloną kwotę do wydania, określana jest też minimalna stawka do podbicia. Program ma też umożliwiać zapis do pliku stanu bieżącej gry. 7. Oczko Gra z komputerem w oczko. Losowanie kart, podejmowanie decyzji komputera o wymianie kart i podbiciu stawki może być zaimplementowane przy pomocy funkcji pseudolosowej, chociaż można zastosować trochę „sztucznej inteligencji”. Gra toczy się na wirtualne pieniądze. Wchodząc do gry gracz ma ustaloną kwotę do wydania, określana jest też minimalna stawka do podbicia. Program ma też umożliwiać zapis do pliku stanu bieżącej gry. 8. Edytor plików tekstowych Program wczytuje wyrazy z pliku tekstowego na listę oraz umożliwia następujące operacje: • usuwanie wszystkich wyrazów, • usuwanie wyrazów zaczynających się od podanego przez użytkownika ciągu znaków, • usuwanie wyrazów o określonej przez użytkownika długości, • usuwanie wyrazów dłuższych niż podana przez użytkownika wartość, • wstawienie wyrazu w konkretne miejsce listy, • sortowanie wyrazów alfabetycznie lub rosnąco/malejąco według ich długości, • zamianę wszystkich wystąpień podanego wyrazu innym wyrazem. Wynik każdej operacji może być zapisany do pliku tekstowego, którego nazwę za każdym razem podaje użytkownik. 9. Sklep Aplikacja powinna ułatwić prowadzenie sklepu i powinna posiadać następujące funkcje: • sprawdzenie stanu magazynowego towarów, • zakup / sprzedaż towaru, rozliczenia • zapis i odczyt stanu magazynowego • wyświetlanie raportów miesięcznych, • wyświetlanie raportów z podanego zakresu, • powiadamianie o brakach towaru, gdy jego ilość jest mniejsza od ustalonej wartości granicznej. • przechowywanie i edycja listy klientów i dostawców. Przy sprzedaży i kupnie towaru należy pamiętać co jest sprzedawane lub kupowane, za ile, komu i kiedy.