Ver Mensaje Individual
  #3  
Antiguo 10-06-2008
jonakary jonakary is offline
Registrado
 
Registrado: feb 2008
Ubicación: Venezuela
Posts: 2
Reputación: 0
jonakary Va por buen camino
Ayuda con metodo de ordenamiento

Cita:
Empezado por dec Ver Mensaje
Hola,

Echa un vistazo al artículo Hide caret (text cursor) "inside" TMemo component, de Zarko Gajic.


holaaa he perdido la cuenta de toda la gente a la que ayudas en este foro! de verdad que eres muy bueno!!, puede ser que parezca un poco novata,, y en realidad si estoy aprendiendo,, y de verdad que ya me ha sacado canas de colores este error... estoy haciendo 3 metodos de ordenacion, burbuja, seleccion y rapido((no me funciona del todo el "rapido") , ya genere en 3 memos numeros o letras aleatorias como lo indique el usiario pero no ambos tipos,, tengo 2 problemas,,
1. Cuando ordeno por el metodo de burbuja y seleccion , perfecto lo ordena pero el detalle es que si el rango de los numeros aleatorios que le doy es de 10 en adelante es decir que toma mas de dos digitos,, ordena de forma que 2 21 31 4 48 49 5 54 59;; en cambio numeros del 0 al 9, lo hace,, lo que pienso es como son string lo ve como tal,, pero he trtado de mil y una forma de convertir el memo a un entero y a la vez guardarlo en un arreglo de tipo entero pra que lo ordene bien,, y no se da.. ¿como convierto los datos que tiene el memo a enteros para que al momento del procedimiento comprar si es mayor o menos no los vea como un string???
Ayuda!! aqui dejo una parte del codigo donde hago el proced de ordenacion


Procedure TForm2.Button6Click(Sender: TObject);
begin
if RadioButton1.checked=true then
begin
for i:=0 to n do
begin
for j:=1 to n-1 do
begin
if (memo1.lines[j-1] > memo1.lines[j]) then
begin
tmp := memo1.lines[j];
memo1.lines[j] := memo1.lines[j-1];
memo1.lines[j-1]:=tmp;
end;
end;
end;
end
else
for i:=0 to n do
begin
for j:=1 to n-1 do
begin
if (memo1.lines[j-1] < memo1.lines[j]) then
begin
tmp := memo1.lines[j];
memo1.lines[j] := memo1.lines[j-1];
memo1.lines[j-1]:=tmp;
end;
end;
end;
end;

este es en este caso si lo quiere ascendente o descendente,,, solo para rangos de 0 --9
Responder Con Cita