procedure TForm1.OrdinaClick(Sender: TObject);

const

n = 20;

var

i,j,k,aux,tmp,lim: integer;

trovato: boolean;

vett:array [1..20] of integer;

begin

if Decrescente.

Descending order

Checked then

begin {inizia l'ordinamento decrescente}

lim:=n;

trovato:=true;

while (lim>0) and (trovato=true) do

begin

trovato:=false;

for i:=1 to lim-1 do

begin

if vett

begin

tmp:=vett;

vett:=vett[i+1];

vett[i+1]:=tmp;

trovato:=true;

end;

end;

lim:=lim-1;

end; {finisce l'ordinamento decrescente}

for i:=1 to 20 do {inizio stampa dell'array ordinato su string grid}

begin

k:=i-1;

StringGrid1.Cells[k,1]:=IntToStr(vett);

end; {fine stampa dell'array ordinato}

end

else

begin {inizia l'ordinamento crescente}

for j := n downto 2 do

for i := 1 to j-1 do

begin

if vett > vett[i+1] then

begin

aux := vett;

vett := vett[i+1];

vett[i+1] := aux;

end;

end;{finisce l'ordinamento crescente}

for i:=1 to 20 do {inizio stampa dell'array ordinato su string grid}

begin

k:=i-1;

StringGrid1.Cells[k,1]:=IntToStr(vett);

end;

end; {fine stampa dell'array ordinato}

end; {fine della procedura}

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community