![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Есть код сортировки массива по возрастанию , нужна блок схема алгоритма! Сам не силён в этом , кто может помочь? Хотя бы на листке ручкой набросать
Код:
procedure TForm1.Button3Click(Sender: TObject); var h,min,s,ms:word; m,i:integer; begin Label10.Caption:=Floattostr(time); for m:=1 to 100000 do for i:=0 to high(A) do tmpA[i]:=0; // заполняем массив нулями for i:=min to n do begin A[i]:=A[i]+1; end; // устанавливаем значение в правильную позицию index:=min; for i:=min to high(A)-1 do begin for j:=0 to A[i]-1 do begin A[index]:=i; index:=index+1; end; end; repeat priz:=false; for i:=1 to n-1 do if a[i]>a[i+1] then begin buf:=a[i]; a[i]:=a[i+1]; a[i+1]:=buf; priz:=true; end; for k:=1 to n do until priz=false; for i:=1 to n do StringGrid2.Cells[i-1,0]:=inttostr(a[i]); DecodeTime(Time-Strtofloat(Label10.Caption),h,min,s ,ms); Label10.Caption:='по возрастанию '+Inttostr(s)+' '+'с'+' '+Inttostr(ms)+' '+'мс'; end; Последний раз редактировалось Admin, 13.05.2011 в 18:02. |
#2
|
|||
|
|||
![]() Ты программу не читаемо пишешь, пример правильного написания:
Код:
procedure TForm1.Button3Click(Sender: TObject); var h,min,s,ms:word; m,i:integer; begin Label10.Caption:=Floattostr(time); for m:=1 to 100000 do for i:=0 to high(A) do tmpA[i]:=0; // заполняем массив нулями for i:=min to n do //begin A[i]:=A[i]+1; Одно действие в форе, begin и end не обязательны //end; // устанавливаем значение в правильную позицию index:=min; for i:=min to high(A)-1 do begin for j:=0 to A[i]-1 do begin A[index]:=i; index:=index+1; end; end; repeat priz:=false; for i:=1 to n-1 do if a[i]>a[i+1] then begin buf:=a[i]; a[i]:=a[i+1]; a[i+1]:=buf; priz:=true; end; for k:=1 to n do until priz=false; for i:=1 to n do StringGrid2.Cells[i-1,0]:=inttostr(a[i]); DecodeTime(Time-Strtofloat(Label10.Caption),h,min,s ,ms); Label10.Caption:='по возрастанию '+Inttostr(s)+' '+'с'+' '+Inttostr(ms)+' '+'мс'; end; Код:
procedure UnleassFor(i: int64) UnleassFor(i + 1); ... UnleassFor(0); ![]() ![]() ![]() |
#3
|
|||
|
|||
![]() Весьма удобный справочничекк по блок схемам:
http://cert.obninsk.ru/gost/282/282.html |