MaksNew

Untitled

Dec 7th, 2020
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.13 KB | None | 0 0
  1. program CocktailSort;
  2.  
  3. var
  4.     Size, i: integer;
  5.     Mas: array of integer;
  6.  
  7. procedure ShakerSort(Mas: array of integer; Size: integer);
  8. var
  9.     Left, Right, temp, i: integer;
  10. begin
  11.     Left := 1;
  12.     Right := Size;
  13.     while Left <= Right do
  14.     begin
  15.         for i := Right downto Left do
  16.             if (Mas[i - 1] > Mas[i]) then
  17.             begin
  18.                 Temp := Mas[i];
  19.                 Mas[i] := Mas[i - 1];
  20.                 Mas[i - 1] := temp;
  21.             end;
  22.         Left := Left + 1;
  23.         for i := Left to Right do
  24.             if Mas[i - 1] > Mas[i] then
  25.             begin
  26.                 temp := Mas[i];
  27.                 Mas[i] := Mas[i - 1];
  28.                 Mas[i - 1] := temp;
  29.             end;
  30.         Right := Right - 1;
  31.     end;
  32.     for i := 0 to Size-1 do
  33.         writeln(Mas[i]);
  34. end;
  35.  
  36. begin
  37.     writeln('Размер массива:');
  38.     readln(Size);
  39.     SetLength(Mas, Size);
  40.     for i := 0 to Size-1 do
  41.     begin
  42.         writeln(i, '-ый элемент:');
  43.         readln(Mas[i]);
  44.     end;
  45.     writeln('После сортировки:');
  46.     ShakerSort(Mas, Size);
  47.     Readln
  48. end.
Advertisement
Add Comment
Please, Sign In to add comment