Tematy projektów

by Daniel Kaczmarski published 2019/03/06 22:30:00 GMT+2, last modified 2024-03-11T23:31:34+02:00

Proponowane tematy projektów

Tematy na ocenę 4.0:

  1. Kompresja/dekompresja tekstu z zastosowaniem kodowania Huffmana. Wykorzystanie drzewa binarnego. Obsługa programu w sposób interaktywny oraz z poziomu linii komend.
  2. Gra Saper. Wykorzystanie biblioteki Allegro/OpenGL, dynamicznej tablicy dwuwymiarowej i list.
  3. Gra Snake. Wykorzystanie biblioteki Allegro/OpenGL, kolejki i list.
  4. Kalkulator wyrażeń arytmetycznych. Ewaluowanie wyrażeń składających się z liczb, operatorów i nawiasów wprowadzanych przez użytkownika i parsowanych z użyciem stosu przy wykorzystaniu odwrotnej notacji polskiej (ONP). Możliwość wprowadzania wyrażeń zarówno w postaci algebraicznej, jak i ONP.
  5. Gra Kości.

Tematy na ocenę 4.5:

  1. Gra Space Invaders. Wykorzystanie biblioteki Allegro/OpenGL i list.
  2. Menedżer plików. Tworzenie/usuwanie katalogów. Wyświetlanie informacji o plikach. Usuwanie/zmiana nazwy/zmiana atrybutów plików. Wyszukiwanie plików/katalogów. Przenoszenie plików pomiędzy katalogami, kopiowanie plików. Wykorzystanie list.
  3. "Gra w życie" Conway'a. Wykorzystanie biblioteki Allegro/OpenGL i dynamicznej tablicy dwuwymiarowej. Implementacja co najmniej trzech struktur z każdego typu (niezmienne, oscylatory, niestałe, statki, działa, puffer'y). Możliwość swobodnego dodawania struktur na planszy.
  4. Gra Domino.
  5. Menedżer zadań. Dodawanie/usuwanie/edycja użytkowników (ID, imię, nazwisko, telefon, E-mail). Logowanie użytkowników z użyciem hasła. Dodawanie/usuwanie/edycja zadań (ID, tytuł, opis, data, godzina, czas trwania, periodyczne (tak, nie), okres powtarzania (minuty/godziny/dni/tygodnie/miesiące), priorytet (niski, normalny, wysoki), status (zaplanowane, niewykonane, wykonane)). Wyświetlanie zadań z możliwością sortowania niemalejącego/nierosnącego po dowolnym polu. Wyszukiwanie zadań. Przypominanie o nadchodzących/zaległych zadaniach. Zapisywanie/wczytywanie zadań oraz użytkowników i ich danych/haseł do/z plików. Wykorzystanie list.

Tematy na ocenę 5.0:

  1. Wypożyczalnia samochodów – Dodawanie/usuwanie/edycja samochodów (nr rejestracyjny, marka, model, rok produkcji, kolor, przebieg, liczba egzemplarzy, liczba wypożyczonych). Dodawanie/usuwanie/edycja klientów (numer karty, imię, nazwisko, adres, telefon). Wypożyczanie/oddawanie samochodów (kto wypożyczył (numer karty), który samochód (nr rejestracyjny), kiedy, do kiedy). Wyświetlanie samochodów z możliwością sortowania rosnącego/malejącego po dowolnym polu. Wyszukiwanie samochodów. Zapisywanie/wczytywanie danych o klientach, samochodach
    i wypożyczenia do/z plików. Wykorzystanie list.
  2. Przychodnia. Dodawanie/usuwanie/edycja pacjentów (ID, imię, nazwisko, PESEL, data urodzenia, adres, E-mail, telefon, waga, wzrost, oddział NFZ). Dodawanie/usuwanie/edycja lekarzy (ID, imię, nazwisko, PESEL, numer PWZ, tytuł zawodowy, specjalizacja, E-mail, telefon, godziny pracy w poszczególnych dniach tygodnia). Rejestracja pacjentów na wizyty u lekarzy (ID pacjenta, ID lekarza, data, godzina, czas trwania, status (zaplanowana, odbyta, odwołana)). Możliwość odwołania wizyty lub zmiany jej terminu na inny. Wyświetlanie pacjentów/lekarzy z możliwością sortowania niemalejącego/nierosnącego po dowolnym polu. Wyszukiwanie pacjentów/lekarzy. Wyświetlanie wizyt danego pacjenta lub przyporządkowanych do danego lekarza z możliwością ograniczenia wyników do konkretnego statusu lub dnia. Zapisywanie/wczytywanie danych o pacjentach, lekarzach i wizytach do/z plików. Wykorzystanie list.
  3. Gra Sudoku.
  4. Wypożyczalnia sprzętu narciarskiego - Dodawanie/usuwanie/edycja sprzętu (ID, nazwa sprzętu, liczba egzemplarzy, liczba wypożyczonych). Dodawanie/usuwanie/edycja klientów (numer karty, imię, nazwisko, adres, telefon). Wypożyczanie/oddawanie sprzętu narciarskiego (kto wypożyczył (numer karty), który sprzęt (ID), kiedy, do kiedy). Wyświetlanie sprzętu narciarskiego z możliwością sortowania rosnącego/malejącego po dowolnym polu. Wyszukiwanie sprzętu narciarskiego. Zapisywanie/wczytywanie danych o klientach, sprzętu narciarskiego i wypożyczenia do/z plików. Wykorzystanie list.
  5. Książka telefoniczna – Dodawanie/usuwanie/edycja książki telefonicznej (ID, nazwisko, imię, adres(ulica, nr domu/mieszkania, kod pocztowy, miasto), telefon). Wyświetlanie kontaktów książki telefonicznej z możliwością sortowania rosnącego/malejącego po dowolnym polu. Wyszukiwanie kontaktów. Zapisywanie/wczytywanie kontaktów do/z pliku. Wykorzystanie list.
  6. Gra Milionerzy. Wykorzystanie list cyklicznych. Wczytywanie pytań podzielonych na różne kategorie z plików. Wykorzystanie biblioteki Allegro/OpenGL.
  7. Gra Bomberman. Wykorzystanie biblioteki Allegro/OpenGL.
  8. Gra 2048. Wykorzystanie biblioteki Allegro/OpenGL.
  9. Gra Arkanoid. Wykorzystanie biblioteki Allegro/OpenGL i dynamicznej tablicy dwuwymiarowej. Wykrywanie kolizji z zastosowaniem drzewa czwórkowego.

Możliwe jest również zgłaszanie własnych tematów projektów, jednakże muszą one dotyczyć dynamicznych struktur danych (stos, kolejka, listy, drzewa, grafy) lub rekurencji.