우선 코드는.
function TForm1.sort(flag: integer):boolean;
var
i,j,tmp:integer;
begin
tmp:=0;
case flag of
1: begin
for i:=0 to 4 do
for j:=0 to 4 do
begin
if Rand[j] > Rand[i] then
//showmessage(inttostr(+Rand[j])+'VS'+inttostr(+Rand[i]));
begin
tmp:=Rand[j];
//showmessage(inttostr(+tmp));
Rand[j]:=Rand[i];
Rand[i]:=tmp;
end; //if
end; //for j
result:=true;
end; //begin1
에디트박스에서 임의의 수를 입력받고 그 수 중에서 임의의 숫자 다섯개를 Random하게 추출합니다. 그 다음에 그 추출된 숫자들을 올림차순과 내림차순으로 정렬하는 코드인데
for구문과 Array구문이 이해가 잘 안됩니다. 무슨 수가 들어가는지 alert도 띄워보고
breakpoint에서 순서대로 실행하는걸 보기도 했는데 잘 모르겠습니다.
기초가 부실해서리...
> 우선 코드는.
>
> function TForm1.sort(flag: integer):boolean;
> var
> i,j,tmp:integer;
> begin
> tmp:=0;
>
> case flag of
> 1: begin
> for i:=0 to 4 do
> for j:=0 to 4 do
> begin
> if Rand[j] > Rand[i] then
> //showmessage(inttostr(+Rand[j])+'VS'+inttostr(+Rand[i]));
> begin
> tmp:=Rand[j];
> //showmessage(inttostr(+tmp));
> Rand[j]:=Rand[i];
> Rand[i]:=tmp;
> end; //if
> end; //for j
> result:=true;
> end; //begin1
>
> 에디트박스에서 임의의 수를 입력받고 그 수 중에서 임의의 숫자 다섯개를 Random하게 추출합니다. 그 다음에 그 추출된 숫자들을 올림차순과 내림차순으로 정렬하는 코드인데
> for구문과 Array구문이 이해가 잘 안됩니다. 무슨 수가 들어가는지 alert도 띄워보고
> breakpoint에서 순서대로 실행하는걸 보기도 했는데 잘 모르겠습니다.
> 기초가 부실해서리...
////////////////////////////////////////////////////////////
정렬방법 알고리즘에 대해 궁굼하신것 같은데요,
위방법은 더블정렬같은데요, 정렬방법은 자료구조에 보시면 퀵,선택,삽입,힙 정