program Lista2; {Kuki Akos munkaja} uses Crt; type TMutato = ^TAdatElem; TAdatElem = record Adat: integer; Kovetkezo: TMutato; end; var Elso, Aktualis, Uj, Elozo: TMutato; Szam: integer; begin ClrScr; Elso := nil; ReadLn(Szam); while Szam <> 0 do begin New(Uj); Uj^.Adat := Szam; Uj^.Kovetkezo := nil; {Az Uj rekord hely‚nek a megkeres‚se a rendezett list ban} Aktualis := Elso; while (Aktualis <> nil) and (Aktualis^.Adat < Uj^.Adat) do begin Elozo := Aktualis; Aktualis := Aktualis^.Kovetkezo; end; {Az Uj rekord beilleszt‚se a list ba} if Aktualis = Elso then {Az Elso elem lesz} Elso := Uj else {Az Elozo m”g‚, az Aktualis el‚} Elozo^.Kovetkezo := Uj; Uj^.Kovetkezo := Aktualis; ReadLn(Szam) end; {A lista megjelenˇt‚se} WriteLn; Aktualis := Elso; while Aktualis<>nil do begin WriteLn(Aktualis^.Adat); Aktualis := Aktualis^.Kovetkezo; end; readkey end.