You are on page 1of 2

program matrice; type mat=array[1..20,1..

20] of integer; var a:mat; var i,j,m,n,s1,p1,max:integer; procedure constructie_matrice(var a:mat;m,n:integer); begin for i:=1 to n do for j:=1 to m do begin write('a[',i,',', ,']='!; rea"#n(a[i, ]!; end; en"; procedure afisare(a:mat;m,n:integer); begin for i:=1 to m do begin for j:=1 to n do write(a[i, ],' '!; write#n; {trec la urmatorul rand} end; en"; procedure a$#icatii(a:mat;n:integer!; begin s1:= ; %1. suma e#emente#or "e $e "iagona#a $rinci$a#a& {parcurgem matricea pe diagonala principala} for i:=1 to n do for j:=1 to n do if i= t'en %e#emente#e "e $e "iagona#a $rinci$a#a& s1:=s1!a"i,j#; $riteln(%&uma =%,s1); %2. $ro"usu# e#emente#or af#ate $e "iagona#a secun"ara& p1:=1; 1

{parcurgem matricea pe diagonala secundara} for i:=1 to n do for j:=1 to n do if i=n( )1 t'en %e#emente#e "e $e "iagona#a secun"ara& p1:=p1'a"i,j#; $riteln(%(rodus=%,p1); %*. anu#ati e#emente#e af#ate sub "iagona#a $rinci$a#a& {parcurgem matricea sub diagonala principala} for i:=1 to n do for j:=1 to n do if i+ t'en %e#emente#e "e sub "iagona#a $rici$a#a& a"i,j#:= ; afisare(a,n,n!; %afisam matricea "u$a anu#area e#emente#or& %,. afisati e#ement# ma-im "e sub "iagona#a secun"ara& max:=)*+ ;

for i:=2 to n "o for :=n(i)2 to n "o if a"i,j#,max t-en max:=a"i,j#; $riteln(%.ax=%,max); %.. a"unati . $entru e#emente#e af#ate "easu$ra "iagona#ei secun"are& for i:=1 to n(1 "o for :=1 to n(i "o a"i,j#:=a"i,j#!/; afisare(a,n,n); end; {programul principal} begin read(m,n); constructie_matrice(a,m,n!; afisare(a,m,n!; a$#icatii(a,n!; en".

You might also like