RE:como ordenar una lista simple
De primera vista te falta el end del while o del if, como lo quieras ver, el caso es que falta un end.
infor me imagino que es del tipo registro con el cual declaraste el puntero, entonces el codigo deberia quedar asi:
inic:=lista;
ordenado:=false;
repeat
ordenado:=true;
aux:=inic;
while (aux^.sig <>nil) do
begin
if aux^.nombre > aux^.sig^.nombre then begin
infor=aux^;
aux^.nombre:=aux ^.sig^.nombre;
aux^.tel:=aux^.sig^.tel;
aux^ .sig^.nombre:=infor.nombre;
aux^.sig^.tel:=infor.tel;
ordenado:=false;
end;
end;
until ordenado;
Suerte
Roberto