Advertisement
Vanya_Shestakov

Ulitka

Dec 12th, 2020
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 0.75 KB | None | 0 0
  1. procedure WriteSpiral(var Matrix: MatrixArr; Arr: TArray);
  2. var
  3.     Turn, I, J, K, High: Integer;
  4. begin
  5.     Turn := Length(Matrix) div 2;
  6.     High := Length(Matrix) - 1;
  7.     K := 0;
  8.     for I := 0 to Turn  do
  9.     begin
  10.         for J := I to High - I do
  11.         begin
  12.             Matrix[I][J] := Arr[K];
  13.             Inc(K)
  14.         end;
  15.  
  16.         for J := I + 1 to High - I do
  17.         begin
  18.             Matrix[J][High -I] := Arr[K];
  19.             Inc(K)
  20.         end;
  21.  
  22.         for J := High - I - 1 downto I do
  23.         begin
  24.             Matrix[High - I][J] := Arr[K];
  25.             Inc(K)
  26.         end;
  27.  
  28.         for J := High - I - 1 downto I + 1 do
  29.         begin
  30.             Matrix[J][I] := Arr[K];
  31.             Inc(K)
  32.         end;
  33.     end;
  34. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement