Author Archives: tratajczak

Projekt Java

Napisać dowolną grę w języku Java

Gra powinna posiadać interfejs graficzny, w technologii takiej jak Swing, z menu pozwalającym na reset rozgrywki.

Warunkiem koniecznym zaliczenia jest

  • przesłanie działającego programu,
  • zastosowanie zagadnień przedstawionych na laboratorium.

Ponadto oceniane będzie

  • wyjaśnienie projektu podczas jego oddawania,
  • właściwe zastosowanie konstrukcji języka Java.

Zadanie 4 – Programowanie dynamiczne

Zagadnienia

  • Metodyka programowania dynamicznego
  • Metoda przeglądu wyczerpującego
  • Złożoność obliczeniowa w/w metod
  • Zakres stosowalności programowania dynamicznego
  • Sformułowanie problemu plecakowego oraz metoda jego rozwiązania

Termin oddawania programów i wyników eksperymentów (+ wykresy): 31.05.2016
Termin dostarczenia sprawozdania (mailem pdf): 07.06.2016

Continue reading

Zadanie 3 – Algorytmy grafowe

Zagadnienia

  • Definicja grafu skierowanego i nieskierowanego
  • Reprezentacje grafu, ich złożoność pamięciowa i złożoność pozyskiwania informacji o grafie z poszczególnych struktur danych
  • Algorytmy przeszukiwania grafu “w głąb” (Depth First Search = DFS) oraz “wszerz” (Breadth First Search = BFS)
  • Algorytm znajdowania cyklu Eulera w grafie, warunki istnienia cyklu Eulera w grafie skierowanym i nieskierowanym, złożoność obliczeniowa procedury poszukiwania cyklu Eulera
  • Metoda poszukiwania minimalnego drzewa rozpinającego w grafie oraz jej złożoność obliczeniowa
  • Algorytm sortowania topologicznego

Termin oddawania programów i wyników eksperymentów (+ wykresy): 17.5.2016
Termin dostarczenia sprawozdania (mailem pdf): 24.5.2016

Continue reading

Projekt C++

Napisać obiektowo program w języku C++

Zaimplementuj parser formatu PDB korzystając z poznanych zagadnień programowania obiektowego. Wczytane wiersze powinny być przechowywane jako obiekty odpowiedniego typu (Atom, Model, Remark, Header..) w obiekcie klasy Pdb.
Klasa Pdb powinna posiadać operatory pozwalające na odczyt i zapis do strumienia. Klasy wierszy powinny tworzyć fragment hierarchi zgodny z dokumentacją. Każdy wiersz powinien posiadać pola odpowiadające informacjom jakie zawiera oraz metodę toText().
Pomiń nieznane oraz niepoprawne wiersze generując komunikat o rodzaju problemu.

Parser powinien obsługiwać rekordy zależne od ostatniej cyfry numeru indeksu:

  • 1 lub 2: MODEL, ENDMDL, TER, ATOM, TITLE
  • 3, 4 lub 5: MODEL, ENDMDL, TER, AUTHOR, TITLE, REMARK
  • 6, 7 lub 8: MODEL, ENDMDL, TER, HET, HETNAM
  • 9 lub 0: MODEL, ENDMDL, TER, HETATM, SOURCE

Przykładowe pliki pobrać można ze strony PDB.

Warunkiem koniecznym zaliczenia jest

  • przesłanie działającego programu, zgodnego z wymaganiami,
  • zastosowanie zagadnień przedstawionych na laboratorium.

Ponadto oceniane będzie

  • wyjaśnienie projektu podczas jego oddawania,
  • właściwe zastosowanie konstrukcji języka C++,
  • zabezpieczenie programu przed błędnymi danymi wejściowymi.