Первый раз столкнулся с динамическими переменными вчера на лабораторной, и ни как не могу их понять.
Написал программу по шаблону, но только она не работает, если размерность матрицы сделать 200х200.
{$R-}
Type
TType=Word;
Type
PVector = ^TVector;
TVector = Array [1..1] of TType;
PDynMatrix = ^TDynMatrix;
TDynMatrix = Array [1..1] of PVector;
Var
mxDynamic:PDynMatrix;
n,i,j,s:word;
Begin
Write('n='); Readln(n);
GetMem(mxDynamic^[i], n*SizeOf(PVector));
for i:=1 to n do
GetMem (mxDynamic^[i], n*SizeOf(TType));
for i:=1 to n do begin
writeln;
for j:=1 to n do
begin
mxDynamic^[i]^[j]:=random(23);
write(mxDynamic^[i]^[j]:3);
end;
end;
s:=0;
j:=1;
for i:=1 to n do begin
s:=mxDynamic^[i]^[j]+s;
j:=j+1;
end;
writeln(' ', 'Summa glawnoj diagonali=',s);
readln;
for i:=1 to n do
FreeMem (mxDynamic^[i], n*SizeOf(TType));
FreeMem (mxDynamic, n*SizeOf (pVector));
end.
Сообщение отредактировано: Wanderer -