动态矩阵生成、获取

奔雷手 2015-07-03 07:55:06

Context
给定两个参数 LA,LB:Integer


根据LA ,LB 动态 输出 LA * LB 的矩阵,里面的内容待定。
我需要的是矩阵怎么生成。
如 LA=3,LB=2
Result:=
1,1,1
1,1,1

不限何种方式存储
HASHTABLE、ClientDataSet、List
都可以。且可以方便获取Result(i,j)
...全文
170 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyhoo163 2015-08-08
  • 打赏
  • 举报
回复


效果图如上。
lyhoo163 2015-08-08
  • 打赏
  • 举报
回复
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; Type TMyMatrix=array of array of string; // 定义矩阵 类型 二维动态数组 var Form1: TForm1; M:TMyMatrix; // 定义全局矩阵变量 implementation {$R *.dfm} procedure Setmatrix(iLa,iLb:integer;var MyMatrix:TMyMatrix); // 创建矩阵 var i,j:integer; begin setlength(MyMatrix,iLa,iLb); for i:=0 to iLa-1 do for j:=0 to iLb-1 do MyMatrix[i,j]:=inttostr(i)+','+inttostr(j); // 坐标值 end; procedure TForm1.Button1Click(Sender: TObject); var i,j,ia,ib:integer; S:string; begin ia:=StrToint(Edit1.text); // 矩阵行数 ib:=StrToint(Edit2.text); // 矩阵列数 S:=''; Setmatrix(ia,ib,M); for i:=0 to ia-1 do begin for j:=0 to ib-1 do S:=S+M[i,j]+' '; S:=S+#13#10; end; Memo1.Text:=S; end; end.
hexfhhu 2015-08-07
  • 打赏
  • 举报
回复
procedure TForm1.CreatMatrix(const LA,LB:integer;var matrix:array of array of integer); //创建矩阵 begin setlength(matrix,LA,LB); end;
newyj 2015-07-08
  • 打赏
  • 举报
回复
var ew:array of array of integer; la,lb:integer; begin la := 2; lb := 3; setlenth(ew,la,lb);
奔雷手 2015-07-05
  • 打赏
  • 举报
回复
引用 1 楼 lyhoo163 的回复:
创建动态二维数组即可。
可能没说明白。举得例子是 可以为二维动态数组。 LA,LB 数值是 不定的。
lyhoo163 2015-07-03
  • 打赏
  • 举报
回复
创建动态二维数组即可。

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧