Предмет: Информатика, автор: lapa2004

Помогите пожалуйста на паскале создать программу которая
Сформировать двумерный массив А размером 5*7 с помощью генератора случайных чисел и вывести элементы массива на экран. Найти средние значения положительных и отрицательных элементов каждого столбца матрицы отдельно и вывести их на экран.

Ответы

Автор ответа: 65536
0
var a:array[1..5,1..7] of integer;
    i,j,kolpol,kolotr:integer;
    respol,resotr:real;
begin
for j:=1 to 7 do begin
  for i:=1 to 5 do begin
    a[i,j]:=random(-50,50);
    write(a[i,j]:4);
  end;
  writeln();
end;
for i:=1 to 5 do begin
  respol:=0;
  resotr:=0;
  kolpol:=0;
  kolotr:=0;
  for j:=1 to 7 do begin
    if a[i,j]>0 then begin
      respol+=a[i,j];
      kolpol+=1;
    end
    else if a[i,j]<0 then begin
       resotr+=a[i,j];
       kolotr+=1;
     end;
  end;
  writeln('Среднее значение положительных чисел в ',i,' столбце=', respol/kolpol);
  writeln('Среднее значение отрицательных чисел в ',i,' столбце=', resotr/kolotr);
end;
end.

Автор ответа: lapa2004
0
Возник вопрос касательно + respol+=a[i,j];
k+=1;
end
else resotr+=a[i,j]; я так понимаю тут допущена ошибка?
Автор ответа: 65536
0
Видимо, да. Количество отрицательных чисел считается как семь минус количество положительных, при таком подходе нули будут посчитаны как отрицательные. То есть сумма отрицательных чисел считается правильно, но, если есть нули, не на то делится. Нужна еще одна переменная - количество строго отрицательных чисел, сейчас поправлю. Это та ошибка, или мы про разные вещи говорим?)
Автор ответа: 65536
0
Теперь "отрицательные" значит именно отрицательные, а не неположительные
Похожие вопросы
Предмет: Қазақ тiлi, автор: sandugash102008
Предмет: Математика, автор: zahsylykovanuraj35