
Задание : "Удалить задданую строку из матрицы 3х4 и уплотнить матрицу"
проблема в том,что я не понимаю как обратить к i+1 элементу матрицы через ptr?..
вот код..
program z1;
uses crt;
const
n=3;
m=4;
var
a:array [1..n,1..m] of integer;
i,j,q:integer;
procedure dels (pa:pointer;n:integer;m:integer);
type
pint= ^integer;
var
si,i,j,k:integer;
function PR(P:pointer):pint;
begin
PR:=ptr(seg(p^),ofs(p^)+((i-1)*n+(j-1))*SI);
end;
begin
si:=sizeof(integer);
writeln('Vvedite stroky kot. hotite ydalit');
readln(k);
for i:=k to n do
begin
for j:=1 to m do
{pr(pa)^:=pr(pa+1)^; вот тут и проблема...я знаю что так прибавлять нельзя,просто для примера написал.}
end;
end;
procedure workingP;
begin
clrscr;
writeln('Vvedite massiv');
for i:=1 to n do
for j:=1 to m do
begin
write('A[',i,j,']=');
read(a[i,j]);
end;
writeln('Vash massiv');
for i:=1 to n-1 do
begin
for j:=1 to n do
write(a[i,j],' ');
writeln;
end;
Dels(@a,n);
readkey;
end;
begin
workingp;
end.