18.03.2003 ZSI.TP.Klasówka Zad 1 (10 p.) Dany jest typ: TElt = record dane: TDane; nast: integer; end; Napisz procedurę procedure kopia(nazwa_we, nazwa_wy: String); która przepisze dane z pliku (o nazwie nazwa_we) rekordów TElt do pliku (o nazwie nazwa_wy) elementów typu TDane, zachowując kolejność wyznaczoną przez pola nast. i usuwając przy okazji sąsiadujące (w sensie kolejności wg pól nast.) elementy o taiej samej wartości pola dane jak element poprzedni (tzn. pierwszy z ciągu powtarzających się elementów zostawiamy). Zakładamy, że pierwsza dana znajduje się w pierwszym rekordzie pliku z danymi (o ile ten plik jest niepusty), zaś pole nast informuje, w którym elemencie pliku jest następna dana do przepisania. Jeśli już nie ma następnej danej, to pole nast ma wartość -1. Można założyć, że plik z danymi istnieje i jest poprawny, a plik z wynikami nie istnieje. Nie wnikamy w to, czy pola nast pozwolą skopiować wszystkie, czy tylko część, danych z pliku wejściowego. Zad 2 (10 p.) Dane są typy: TDane = ; { Jakiś typ z operacjami <, <=, >, >=. <>, = } TLista = ^TElt; TElt = record dane: TDane; nast: TLista; end; Napisz procedurę procedure Usuń(var l1: Tlista; l2: TLista); która usunie z posortowanej rosnąco (wzgl. pola dane) listy l1 wszystkie liczby występujące na posortowanej rosnąco liście l2. Powodzenia!