Дана целочисленная квадратная матрица. Определить сумму элементов в тех столбцах, которые не содержат отрицательных элементов; минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали
Категория: Delphi/Pascal
2012-02-05 18:57:59
code: #pascal
program fg; var A:array[1..100,1..100] of integer; n,i,j:integer; procedure min(n:integer); var i,j,p,pk,sum,index,mm :integer; ot,minki:array[1..100] of integer; begin pk:=1; for i:=1 to 100 do if i mod 2=0 then begin inc(pk); ot[pk]:=i; end; index:=0; for p:=2 to ot[n] do if p<>n then begin sum:=0; for i:=1 to n do for j:=1 to n do if i+j-1=p then sum:=sum+abs(A[i,j]); inc(index); minki[index]:=sum; writeln('Summa "',index,'" paralelinoi diagonali= ',sum); end; mm:=minki[1]; for i:=2 to index do if minki[i]<mm then mm:=minki[i]; writeln('Minimum iz SUMM diagonalei= ',mm); end; {*********************///*************************** } procedure sum(n:integer); var i,j,rez:integer; m:boolean; begin for j:=1 to n do begin m:=true; for i:=1 to n do if A[i,j]<0 then m:=false; rez:=0; if m then begin for i:=1 to n do rez:=rez+A[i,j]; writeln('Summa ',j,' stolbca= ',rez); end; end; end; {*********************///*************************** } begin write('razmer N= '); readln(n); for i:=1 to n do for j:=1 to n do begin write ('A[',i,',',j,']='); readln (A[i,j]); end; writeln; writeln('Vot vvedennaia vami Matrica "A":'); for i:=1 to n do begin writeln; for j:=1 to n do write (A[i,j]:3,' '); end; writeln; writeln; sum(n); {***1***} writeln; min(n); {***2***} readln; end.
Поделиться: