1. (1p.) Zdefiniuj strukturę pozwalającą przechowywać dane pojedynczego elementu wybranej bazy danych np. katalogu książek w bibliotece, spisu samochodów w autokomisie, zestawienia miesięcznych wydatków studenta, itp.Następnie zdefiniuj N-elementową (pseudo-dynamiczną) tablicę w/w struktur pozwalającą przechowywać dane wielu elementów (ale nie więcej niż N) z dodatkowym licznikiem informującym o ilości wpisanych danych.

  2. (2p.) Napisz funkcje pozwalające wczytywać i wyświetlać zawartość bazy.
    Uwaga: w/w tablice lub struktury powinny być przekazywane jako parametry funkcji !
    * (+1p.) zdefiniuj operatory strumieni isream i ostream.
    * (+1p.) napisz funkcje do zapisywania zawartości bazy do pliku i wczytywania z pliku.

  3. (3p.) Napisz funkcję pozwalającą wyszukać w bazie elementy o zadanych parametrach np. samochód marki FIAT, rocznik nie starszy niż 1990,  o cenie z zadanego przedziału.

Dodatkowe zadania "dla zaawansowanych":

  1. (2p.) Napisz funkcję umożliwiającą edycję/poprawianie danych pojedynczych elementów bazy. Np zmianę ceny samochodu w autokomisie, aktualizację adresu w bazie danych personalnych, itp

  2. Napisz funkcję umożliwiającą interaktywne przeglądanie zawartości bazy.
    Uwzględnij przypadki, gdy dane zapisane w bazie nie zmieszczą się na jednym ekranie (np. katalog 1000 tytułów ksiażek i nazwisk autorów).
    - (2p.) w najprostszym przypadku (przeglądanie bazy od pierwszego do ostatniego elementu) wystarczy wprowadzenie tzw. stronicowania,
    - (4p.) najbardziej uniwersalnym rozwiązaniem jest umożliwienie "sterowania" przeglądaniem za pomocą strzałek na klawiaturze tzn:
               klawisz  "<-"  oznacza: wyświetl poprzedni element bazy
               klawisz   "->"  oznacza: wyświetl następny element bazy
               klawisz   "ESC" oznacza: zakończ przeglądanie



  1. (4p.) Zdefinuj strukturę definującą liczby ułamkowe (ułamki zwykłe) oraz funkcje operujące na niej. Powinny być zdefiniowane funkcje do wczytywania wartości, wyświetlania (+1p. za zdefiniowanie operatorów strumieni), czterech działań arytmtycznych (+0,5p. za zdefiniowanie operatorów) oraz skracanie ułamka i wydzielania części całkowitej. Przydadzą się też pomocnicze funkcje: NWD, NWW i sprowadzające do wspólnego mianownika.