Egzamin ze Wst_{}epu do Informatyki, 6 września 1999

Zadanie 1 Na wejściu dany jest plik tekstowy tekst.txt. Napisać program w pascalu, który znajduje lini_{}e o maksymalnej liczbie słów i podaje na wyjściu numer tej linii. Przez słowo rozumiemy dowolny ci _{}ag znaków różnych od spacji, końca linii i końca pliku. Linie numerowane s _{}a od 1.

Zadanie 2 Lista jednokierunkowa zbudowana jest z elementów zadeklarownych jako:

 type
   wsk=^elem;
   elem = record
            id: integer;
            nast: wsk
         end;

Lista l zawiera w polu id liczby całkowite. Napisać w pascalu procedur_{}e rozdziel(var l,lu,ld:wsk), która z listy l usunie elementy zawieraj _{}ace w polu id liczby ujemne i utworzy z nich list_{}e lu oraz elementy zawieraj _{}ace w polu id liczby dodatnie, z których utworzy list_{}e ld. Ewentualne zera zostan _{}a na liście l.

Zadanie 3 Drzewo binarne jest zdefiniowane nast_{}epuj _{}aco:

 type
   drzewo = ^wezel;
   wezel = record
             klucz: integer;
             lewy, prawy: drzewo
           end;

Napisać w pascalu funkcj_{}e ścieżka(d: drzewo):integer, która znajduje w drzewie d ścieżk_{}e o maksymalnej sumie kluczy i zwraca jako wartość t_{}e sum_{}e. Np. dla drzewa d

                 3
                /  \
               1    4
             /  \    \
            1    5    9
                /
               2

wartości _{}a ścieżka(d) powinno być 16.