FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Tambien me sirvió tu ejemplo
Aún despues de que ya tiene rato que publicaste tu consejo, me sirvió para ordenar fechas, te dejo lo que arreglé:
La variable tot, la declaré publica y el objetivo es explorar una serie de nombres de archivo los cuales están guardados con un mombre de fecha, la intención es extraer el nombre del archivo, acomodarlo por fecha en un combo list box y para eso necesité de tu método burbuja., gracias. procedure TForm1.Button3Click(Sender: TObject); var SearchRec: TSearchRec; archivo : string; x, y :integer; aux : TDateTime; vec: array[0..500] of TdateTime; begin tot:=0; if psvBrowseFolderDialog1.Execute then begin Memo2.Clear; SB1.SimpleText:=psvBrowseFolderDialog1.FolderName; archivo:=''; CLB1.Clear; if FindFirst(psvBrowseFolderDialog1.FolderName+'\*.01', faAnyFile and not (faVolumeID or faDirectory), SearchRec) = 0 then begin repeat archivo:=SearchRec.Name; tot:=tot+1; vec[tot]:=StrToDate(archivo[3]+archivo[4]+'/'+archivo[5]+archivo[6]+'/'+archivo[7]+archivo[8]) //CLB1.Items.Add(archivo[3]+archivo[4]+'/'+archivo[5]+archivo[6]+'/'+archivo[7]+archivo[8]); until FindNext(SearchRec) <> 0; FindClose(SearchRec); end; ///MÉTODO BURBUJA PARA ARREGLAR FECHAS /////////// tot2 := tot; //tot es la variable que me dice cuantos de los for x := 1 to tot - 1 do //numeros del arreglo no son 0 begin if vec[x] = 0 then begin for y := x to tot - 1 do //se recorren todos los valores una unidadvec[y] := vec[y+1]; //hacia atras vec[tot] := 0; //a la ultima posicion se le da valor de cero dec(tot); end; end; for x := 1 to tot do //Metodo de burbuja begin for y := 1 to tot - 1 do begin if vec[y] > vec[y+1] then begin aux := vec[y]; vec[y] := vec[y+1]; vec[y+1] := aux; end; end; end; //////////////////////////////////////////////// //FOR PARA INSETAR EN CLB1/////////////// for x:=1 to tot2 do begin CLB1.Items.Add(DateToStr(vec[x])); end; /////////////// end; end; |
|
|
|