Задана матрица X[N,M],где N=15;M=20.Найти среднее арифметическое элементов строк с чётными номерами.Если найденное с.а.>0,то отрицательные элементы матрицы заменить их модулями.В противном случае все положительные элементыматрицы заменить нулём.Преобр.матрицу вывести на экран.
Pascal. Массивы.
Решите задачку плз.Тоже с массивом:
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Отделил тему
Код: Выделить всё
program matrix;
var
x: array [1..15,1..20] of integer;
i,j,count,sar: integer;
begin
randomize;
count:=0;
sar:=0;
for i:=1 to 15 do
for j:=1 to 20 do
begin
x[i][j]:=random(90);
if random(2)=1 then
x[i][j]:=0-x[i][j];
end;
for i:=1 to 15 do
begin
writeln('');
for j:=1 to 20 do
write(x[i][j],' ');
end;
for i:=1 to 15 do
begin
if i mod 2 =0 then
for j:=1 to 20 do
begin
count:=count+1;
sar:=sar+x[i][j];
end;
end;
sar:= sar div count;
if sar > 0 then
for i:=1 to 15 do
for j:=1 to 20 do
{if x[i][j] < 0 then //этот иф нужен по условию, но не является необходимым, так как модуль положительного числа равен самому числу.Закоментирован потому что неправильно обрабатывается компилятором}
x[i][j]:=abs(x[i][j])
else
for i:=1 to 15 do
for j:=1 to 20 do
if x[i][j] > 0 then
x[i][j]:=0;
writeln('');
for i:=1 to 15 do
begin
writeln('');
for j:=1 to 20 do
write(x[i][j],' ');
end;
readln;
end.
ака хинт: коментируйте код, самим же легче будет разобраться 
