7.Найти произведение двух квадратных матриц А(3*3) и В(3*3).9.Дан массив А(3*4). Найти...

0 голосов
30 просмотров
7.Найти
произведение двух квадратных матриц А(3*3) и В(3*3).

9.Дан массив
А(3*4). Найти номера всех максимальных элементов в каждой строке.

10.Дан массив
А(3*4). Найти в каждой строке сумму элементов, кратных 3.



11.Дан массив
А(3*4). Найти количество элементов в каждой строке, больших среднего
арифметического элементов данной строки.

паскаль

Информатика (2.6k баллов) | 30 просмотров
0

предлагаешь программу написать и выложить здесь ?

0

4 программы !

0

да

Дано ответов: 2
0 голосов
Правильный ответ

Program asd;
USES crt;
Const n=3;
Const m=3;
Var
A,B,C: Array [1..n, 1..m] Of Integer;
i,j,k: Integer;
S:Integer;
Begin
Writeln('A:');
For i:=1 to n do
begin
for j:=1 to m do
begin
A[i,j]:=random(n);
Write(' ',A[i,j]);
end;
Writeln;
end;
Writeln('B:');
For i:=1 to n do
begin
for j:=1 to m do
begin
B[i,j]:=random(n);
Write(' ',B[i,j]);
end;
Writeln;
end;
For i := 1 To n Do
Begin
For j := 1 To m Do
Begin
S:= 0;
For k:=1 To n Do
S:= S + A[i,k] * B[k,j];
C[i, j] := S;
End;End;
WriteLn ('C:');
For i := 1 To n Do
Begin
For j := 1 To m Do
begin
Write (' ',C[i, j] );
End;
WriteLn;
End;
ReadLn;
End.

(1.1k баллов)
0

Program asd;
USES crt;
Const n=3;
Const m=4;
var A:array[1..n,1..m] of integer;
i,j,p,s:integer;
BEGIN
Clrscr;
For i:=1 to n do
begin
for j:=1 to m do
begin
A[i,j]:=random(10);
Write(' ',A[i,j]:2)
end;
Writeln;end;
Writeln;
For i:=1 to n do
begin
S:=0;
for j:=1 to m do
if A[i,j] mod 3=0 then
begin
S:=S+A[i,j];
end;
Writeln(' Symma v stro4ke ',i,': ',s);
end;END.

0

это была 10-я

0 голосов

7. Произведение двух матриц - это матрица, каждый член которой есть
c(i, j) = Summa(1, k) a(i, k)*b(k, j)
То есть надо три цикла друг в друге, а внутри эта формула.
for i:=1 to 3 do
begin
for j:=1 to 3 do
begin
C[i,j]:=0;
for k:=1 to 3 do C[i,j] := C[i,j] + A[i,k]*B[k,j];
end;
end;
9. Номера максимальных элементов в каждой строке А(3, 4) сами образуют
массив B(3). Цикл такой:
for i:=1 to 3 do
begin
Max = A[i, 1];
for j:= 1 to 4 do
if A[i,j] > Max then Max := A[i,j]; B[i]:= j;
end;

10. Тоже самое, как в 9
for i:=1 to 3 do
begin
B[i] = 0;
for j:= 1 to 4 do if (A[i,j] mod 3 = 0) then B[i] := B[i] + A[i,j];
end;

11. Сначала заполним массив B[i] средними ариф. по строкам
for i:=1 to 3 do
begin
B[i] = 0;
for j:= 1 to 4 do B[i] := B[i] + A[i,j];
B[i] := B[i] / 4;
end;
А потом найдем в каждой строке A[i,j], сколько элементов больше B[i].
Посчитаем их в счетчике с и запишем обратно в массив B[i].
for i:=1 to 3 do
begin
c:=0;
for j:= 1 to 4 do if A[i,j] > B[i] then c:=c+1;
B[i] := c;
end;














(320k баллов)