Другие языки программирования и технологии

помогите написать программу на паскале!!! если можно напишите в комментах что где делаете!!!

Задачи: 1)Найти наибольший элемент матрицы X(4,5). Записать единицы в те строку и столбец, где он находиться. 2)Даны две квадратные вещественные матрицы 4-го порядка. Напечатать ту из них, норма которой наименьшая (считать, что такая матрица одна). В качестве нормы матрицы взять максимум абсолютных величин ее элементов. Максимум определяется с помощью процедуры.
1)
var A : Array [1..4, 1..5] of Integer; Row, Col, MaxRow, MaxCol : Byte;
begin
... { заполнение - сам !!!}
MaxRow := 1; MaxCol := 1; for Row := 1 to 4 do for Col := 1 to 5 do if A[Row, Col] > A[MaxRow, MaxCol] then begin MaxRow := Row; MaxCol := Col; end;
for Row := 1 to 4 do A[Row, MaxCol] := 1;
for Col := 1 to 5 do A[MaxRow, Col] := 1;
WriteLn('Новая матрица: ');
for Row := 1 to 4 do begin for Col := 1 to 5 do Write(A[Row, Col]:5); WriteLn; end;
end.
2)
type AType = array [1..4, 1..4] of Real;
function Max(A, B : Real) : Real;
begin if A > B then Max := A else Max := B end;
function Norma(A : AType) : Real;
var Row, Col : Byte; N, Nmax : Real;
begin
Nmax := 0; for Col := 1 to 4 do begin N := 0; for Row := 1 to 4 do N := N + Abs(A[Row, Col]); Nmax := Max(N, Nmax); end; Norma := Nmax;
end;
procedure Out(A : AType);
var Row, Col : Byte;
begin
for Row := 1 to 4 do begin for Col := 1 to 4 do Write(A[Row, Col]:5:3); WriteLn; end;
end;
var A, B : AType;
begin
... { заполнение - сам !!!}
if Norma(A) > Norma(B) then Out(A) else Out(B);
end.
Руслан Махмудов
Руслан Махмудов
52 002
Лучший ответ
ну если поделишся частью пачки, что на авке, то помогу.
{Найти наибольший элемент матрицы X(4,5).
Записать единицы в те строку и столбец, где он находиться. }

Uses CRT;
Var i,j,iMax,jMax: Byte;
Max: ShortInt;
X: Array[1..4,1..5] of ShortInt;
Begin
ClrScr;
Randomize;

Max := -50;
iMax := 0;
jMax := 0;
For i:=1 to 4 do
Begin
For j:=1 to 5 do
Begin
{присваиваем X случайное число [-50..50]}
X[i,j] := Random(101)-50;

{Ищем максимальный и его индексы}
If (Max < X[i,j]) then
begin
Max := X[i,j];
iMax := i;
jMax := j;
end;

{Выводим каждый элемент}
Write(X[i,j]:4);
End;
WriteLn;
End;
WriteLn;

WriteLn('Max = ',Max,'[',iMax,',',jMax,']');
WriteLn;
{Преобразованная матрица}
For i:=1 to 4 do
Begin
For j:=1 to 5 do
Begin
If j=jMax then X[i,j]:=1;
If i=iMax then X[i,j]:=1;
Write(x[i,j]:4);
End;
WriteLn;
End;

End.
Д:
Ден :-)
3 352