All pastes #2124923 Raw Edit

Funcion Insertar

public text v1 · immutable
#2124923 ·published 2012-03-06 21:37 UTC
rendered paste body
Function InsertarDato(dato:tDato;lista:tListaOrdenada):tListaOrdenada  ;
var
flag:boolean = false;
aux1,aux2:tDato;
begin
if esListavacia(lista)=true THEN
   Begin
   lista.primero:=1;
   lista.datos[1]:=dato;
   lista.ultimo:=1;
   InsertarDato:=lista;
   end
else begin

  for contador:=lista.primero to lista.ultimo do
      begin
        if ((upcase(lista.datos[contador].nickUsuario)<=upcase(dato.nickUsuario)) and (flag=false))  then
           flag:=true;
           lista.ultimo:=lista.ultimo+1;
           aux1:=lista.datos[contador+1];
           lista.datos[contador+1]:=dato;
           aux2:=lista.datos[contador+2];
           if contador+2<lista.ultimo then
              begin
           for contador2:=contador+2 to lista.ultimo do
               begin
                   lista.datos[contador2]:=aux1;
                   aux1:=aux2;
                   aux2:=lista.datos[contador2+1];
               end;


              end
           else lista.datos[contador+1]:=aux1;
      end;
  if flag=false then
     begin
     aux1:=lista.datos[1];
     lista.ultimo:=lista.ultimo+1;
     lista.datos[1]:=dato;
     for contador:=2 to lista.ultimo do
         begin
           aux2:=lista.datos[contador];
           lista.datos[contador]:=aux1;
           aux1:=aux2;
         end;
     end;
    InsertarDato:=lista;
end;
end;