{$N+} type matr = array[1..10,1..10] of single; var a,b,c,b2,c1,c2: matr; i,j,n: byte; procedure m_mul(var c: matr; const a,b: matr; n: byte); var i,j,k: byte; begin for i:=1 to n do for j:=1 to n do begin c[i,j]:=0; for k:=1 to n do c[i,j]:=c[i,j]+a[i,k]*b[k,j]; end; end; begin write('n = '); read(n); {вводим матрицы} for i:=1 to n do for j:=1 to n do begin write('Vedite a[',i,',',j,']='); readln(a[i,j]); end; for i:=1 to n do for j:=1 to n do begin write('Vedite b[',i,',',j,']='); readln(b[i,j]); end; {находим b2=b^2} m_mul(b2,b,b,n); {находим c1=2.5*a+b2 и c2=a-b2} for i:=1 to n do for j:=1 to n do begin c1[i,j]:=2.5*a[i,j]+b2[i,j]; c2[i,j]:=a[i,j]-b2[i,j]; end; {находим c=c1*c2} m_mul(c,c1,c2,n); {выводим матрицу} for i:=1 to n do begin for j:=1 to n do write(c[i,j]:10:3); writeln; end; readln; end. |