Advertisement
HEX0x29A

Вывод массива на TLabel

Nov 2nd, 2019
305
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.20 KB | None | 0 0
  1. unit Unit1;
  2. (*
  3. https://otvet.imgsmail.ru/download/24751000_ee2f9960b2ff9cd7b6c74ff62b4b14b1_800.png
  4. *)
  5. interface
  6.  
  7. uses
  8.   SysUtils, Controls, Forms, StdCtrls, Classes;
  9.  
  10. type
  11.   TForm1 = class(TForm)
  12.     Label1: TLabel;
  13.     Button1: TButton;
  14.     procedure Button1Click(Sender: TObject);
  15.   end;
  16.  
  17. var
  18.   Form1: TForm1;
  19.  
  20. implementation
  21.  
  22. {$R *.dfm}
  23.  
  24. type
  25.   TMatrix = array of array of Integer;
  26.  
  27. var
  28.   A: TMatrix;
  29.  
  30. procedure PrintOnLabel(A: TMatrix; L: TLabel);
  31. var
  32.   i, j: Integer;
  33.   t: string;
  34. begin
  35.   t := '';
  36.   for i := Low(A) to High(A) do
  37.   begin
  38.     for j := Low(A[i]) to High(A[i]) do
  39.       t := t + Format('%4d', [A[i][j]]);
  40.     t := t + sLineBreak;
  41.   end;
  42.   t := TrimRight(t);
  43.   with L do
  44.   begin
  45.     Font.Name := 'Courier New';
  46.     WordWrap := False;
  47.     Caption := t;
  48.     AutoSize := True;
  49.   end;
  50. end;
  51.  
  52. procedure RandMatrix(var A: TMatrix);
  53. var
  54.   i, j: Integer;
  55. begin
  56.   Randomize;
  57.   SetLength(A, Succ(Random(10)), Succ(Random(10)));
  58.   for i := Low(A) to High(A) do
  59.     for j := Low(A[i]) to High(A[i]) do
  60.       A[i][j] := Random(101) - 50;
  61. end;
  62.  
  63. procedure TForm1.Button1Click(Sender: TObject);
  64. begin
  65.   RandMatrix(A);
  66.   PrintOnLabel(A, Label1);
  67. end;
  68.  
  69. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement