unit R10_UNIT;
interface
type masiv=array[1..50,1..50] of integer;
procedure maso(n:integer; m:masiv; var m1:masiv);
implementation
procedure maso;
var y,i:integer;
begin
for i:=1 to n do
for y:=1 to n do
if m[i,y]<0 then m[i,y]:=0;
for i:=1 to n do
for y:=1 to n do
m[i,y]:=m1[i,y];
end;
end.
А вот прога, где я этот модуль использую: (в месте обращения к процедуре пишет несоответствие типов)
uses R10_UNIT;
type masiv=array[1..100,1..100] of integer;
var nn:integer; mm1,mm:masiv; {array[1..100,1..100] of integer;}
ii,yy:integer; {nn:integer;} {mm:array[1..100,1..100] of integer; }
begin
writeln('введите размерность квадратной матрицы(одно число): ');
readln(nn);
{********************************************************}
writeln('вводите элементы матрицы: ');
{ввод элементов в память}
for ii:=1 to nn do
for yy:=1 to nn do
readln(mm[ii,yy]);
{конец - ввод элементов в память}
{вывод шапки с n столбцами}
write(#201);
for ii:=1 to nn do begin
write(#205,#205,#205,#205,#205);
if ii<>nn then write(#203);
end;
writeln(#187);
{конец - вывод шапки с n столбцами}
{вывод середины матрмцы}
for ii:=1 to nn do begin
for yy:=1 to nn do begin
write(#186,mm[ii,yy]:5);
end;
writeln(#186);
if ii<>nn then write(#204);
{if (ii<>nn) then begin}
if ii<>nn then
for yy:=1 to nn do begin
write(#205,#205,#205,#205,#205);
if yy=nn then writeln(#185) else write(#206)
end;
{end;}
{if ii=nn then writeln(#185) else writeln;}
end;
{конец - вывод середины матрмцы}
{вывод шапки(снизу) с n столбцами}
write(#200);
for ii:=1 to nn do begin
write(#205,#205,#205,#205,#205);
if ii<>nn then write(#202);
end;
writeln(#188);
{конец - вывод шапки(снизу) с n столбцами}
maso(nn,mm,mm1); {***************ЗДЕСЬ ВЫВОДИТ ОШИБКУ*******************}
readln;
end.
ПОДСКАЖИТЕ В ЧЁМ ОШИБКА И КАК ЕЁ ИСПРАВИТЬ?З.Ы. В проге много лишнего, вырезаного (ненужное), но алгоритм цел.
М | Используй не цитатные теги, а паскалевские (в меню CODE). Лопарь |