program e_list; { Datenstruktur einer einfach verketteten Liste zum Experimentieren ( z.B. Sortieren ) } uses crt; type link = ^node; node = record info : string; next : link; end; var head,z,k : link; procedure list_init; begin new(head); new(z); head^.next:=z; z^.next:=z; end; procedure delete_next(Knoten : link); var temp : link; begin temp:=Knoten^.next; Knoten^.next:=temp^.next; dispose(temp); end; procedure insert_after(Knoten : link; Inhalt : string); var temp : link; begin new(temp); temp^.next:=Knoten^.next; temp^.info:=Inhalt; Knoten^.next:=temp; end; procedure read_liste; var temp : link; stuff : string; begin list_init; temp:=head; writeln('Geben Sie nun die Inhalte aller Knoten an . ( Ende mit CR ) '); writeln;writeln; repeat write(' Inhalt ? '); readln(stuff); if stuff<>'' then begin insert_after(temp,stuff); temp:=temp^.next; end; until stuff=''; end; procedure print_liste(ab : link); var temp : link; begin temp:=ab; while temp<>z do begin write(temp^.info , '---'); temp:=temp^.next; end; writeln('ende'); end; begin clrscr; writeln(' *** Test-Programm fÜr einfache Liste *** '); writeln('Zuerst muß eine Liste mit Buchstaben o.Ä. erzeugt werden ! '); writeln;writeln; read_liste; readln; clrscr; print_liste(head^.next); readln; end.