program matrixa; uses crt; const n=7; name='C:\neo.out'; lin='*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*'; var fiogr:string[50]; neo:text; sumstr,sumst:integer; srsumstr,srsumst:real; i,j:byte; t,f:boolean; v,u:real; c,d:shortint; a,b:array[1..n] of real; type matr=array[1..n,1..n] of shortint; procedure creatematrix(var matrix:matr; const n:byte); var i,j:byte; begin randomize; for i:=1 to n do for j:=1 to n do matrix[i,j]:=random(99)-49; end; procedure printmatrix(matrix:matr; const n:byte); var i,j:byte; begin for i:=1 to n do begin for j:=1 to n do begin write(neo,' ',matrix[i,j]:3); end; writeln(neo); end; end; begin clrscr; assign(neo,name); rewrite(neo); writeln('Laboratornaya rabota 7'); writeln('Vvedite FIO, gruppu'); readln(fiogr); writeln('Zadacha na dvujmerniy massiv'); writeln(neo,' Rezultat vichisleniy sojraneni v failie ', name); writeln(neo,' Laboratornaya rabota 7'); writeln(neo,' Zadacha na dvujmerniy massiv'); writeln(neo,lin); writeln(neo,fiogr); writeln(neo,lin); writeln(neo,' Isjodnaya matritsa'); creatematrix(matrix,n); printmatrix(matrix,n); writeln(neo,lin); writeln(neo,' Sriedniye arifmieticheskiye strok'); for i:=1 to n do begin sumstr:=0; for j:=1 to n do sumstr:=sumstr+matr[i,j]; srsumstr:=sumstr/n; a[i]:=srsumstr; write(neo,' a[',i,']=',a[i]:6:2); if i mod 4 =0 then writeln(neo); end; writeln(neo); writeln(neo,lin); writeln(neo,' Orsortirovanniy massiv iz srednij arifmeticheskij'); writeln(neo,' eliemientov strok'); repeat t:=true; for i:=1 to n-1 do if a[i]>a[i+1] then begin for j:=1 to n do begin c:=matr[i,j]; matr[i,j]:=matr[i+1,j]; matr[i+1,j]:=c; end; u:=a[i]; a[i]:=a[i+1]; a[i+1]:=u; t:=false; end; until t; for i:=1 to n do begin write(neo,' a[',i,']=',a[i]:6:2); if i mod 4 =0 then writeln(neo); end; writeln(neo); writeln(neo,lin); writeln(neo,' Otsortirovannaya matritsa po strokam'); for i:=1 to n do begin for j:=1 to n do begin write(neo,' ',matr[i,j]:3); end; writeln(neo); end; writeln(neo,lin); for i:=1 to n do begin for j:=1 to n do begin write(neo,' ',matr1[i,j]:3); end; writeln(neo); end; writeln(neo,' Sriedniye arifmieticheskiye stolbtsov'); for j:=1 to n do begin sumst:=0; for i:=1 to n do sumst:=sumst+matr[i,j]; srsumst:=sumst/n; b[j]:=srsumst; write(neo,' ','b[',j,']=',b[j]:6:2); if j mod 4 =0 then writeln(neo); end; writeln(neo); writeln(neo,lin); writeln(neo,' Orsortirovanniy massiv iz srednij arifmeticheskij'); writeln(neo,' eliemientov stolbtsov'); repeat f:=true; for j:=1 to n-1 do if b[j]>b[j+1] then begin for i:=1 to n do begin d:=matr[i,j]; matr[i,j]:=matr[i,j+1]; matr[i,j+1]:=d; end; v:=b[j]; b[j]:=b[j+1]; b[j+1]:=v; f:=false; end; until f; for j:=1 to n do begin write(neo,' ','b[',j,']=',b[j]:6:2); if j mod 4 =0 then writeln(neo); end; writeln(neo); writeln(neo,lin); printmatrix(matrix,n); writeln(neo,' Otsortirovannaya matritsa po stolbtsam'); for i:=1 to n do begin for j:=1 to n do begin write(neo,' ',matr[i,j]:3); end; writeln(neo); end; close(neo); readln; end.