Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- procedure WriteSpiral(var Matrix: MatrixArr; Arr: TArray);
- var
- Turn, I, J, K, High: Integer;
- begin
- Turn := Length(Matrix) div 2;
- High := Length(Matrix) - 1;
- K := 0;
- for I := 0 to Turn do
- begin
- for J := I to High - I do
- begin
- Matrix[I][J] := Arr[K];
- Inc(K)
- end;
- for J := I + 1 to High - I do
- begin
- Matrix[J][High -I] := Arr[K];
- Inc(K)
- end;
- for J := High - I - 1 downto I do
- begin
- Matrix[High - I][J] := Arr[K];
- Inc(K)
- end;
- for J := High - I - 1 downto I + 1 do
- begin
- Matrix[J][I] := Arr[K];
- Inc(K)
- end;
- end;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement