Дана матрица A[1:6;1:6]. Если на главной диагонали матрицы есть отрицательный элемент, то из минимальных элементов строк сформировать вектор B
Категория: Delphi/Pascal
2012-01-09 17:52:08
Иначе из отрицательных элементов матрицы сформировать вектор C, по правилу: C[k]=A[i,j]*Amax
code: #pascal
program PascalGuru; uses crt; var A:array[1..6,1..6] of integer;{объявление переменных} B:array[1..6] of integer; C:array[1..36] of integer; i,j,min,max,k:integer; usl:boolean; {-----------------------------------} begin writeln('Vvedite elementy massiva:'); for i:=1 to 6 do for j:=1 to 6 do begin write('A[',i,',',j,']='); readln(A[i,j]); end; clrscr; writeln('Vvedennyi massiv:'); for i:=1 to 6 do begin writeln; for j:=1 to 6 do write (A[i,j]:8); end; writeln; usl:=false; for i:=1 to 6 do for j:=1 to 6 do if (i=j) and (A[i,j]<0)then usl:=true; k:=0; if usl then begin for i:=1 to 6 do begin min:=A[i,1]; for j:=2 to 6 do if A[i,j]<min then min:=A[i,j]; B[i]:=min; end; writeln;writeln('Massiv B: ');writeln; for i:=1 to 6 do write(B[i]:8); end else begin max:=A[1,1]; for i:=1 to 6 do for j:=1 to 6 do if A[i,j]>max then max:=A[i,j]; for i:=1 to 6 do for j:=1 to 6 do begin inc(k); C[k]:=A[i,j]*max; end; writeln;writeln('Massiv C: ');writeln; for i:=1 to 36 do write(C[i],' ') end; readln; end.
Поделиться: