дана матрица А(n*m). получить вектор b1(), b2(), ...,b(n), где b(i) равно количеству...

0 голосов
65 просмотров

дана матрица А(n*m). получить вектор b1(), b2(), ...,b(n), где b(i) равно количеству отрицательных элементов в строке.


Информатика (15 баллов) | 65 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Проверено - работает на Паскаль АВС

 

Program mashaaq;
uses crt;
const n=12;
const m=15;
var
  a:array[1..n,1..m] of integer;
  b:array[1..n] of integer;
  i,j,minus : integer;
begin
  Randomize;
  for i:=1 to n do
    for j:=1 to m do
      a[i,j]:= Random(101)-50; //заполняем массив случайными числами
  writeln('*** alphaues is thinking... ***');
  writeln('***          OK             ***');
  for i:=1 to n do //просматриваем строки сверху вниз
    begin
      minus:=0;
      for j:=1 to m do //просматриваем строку
        if a[i,j]<0  then minus:=minus+1; //если найден отрицательный элемент, увеличиваем счётчик minus на единицу<br>      b[i]:=minus; //сохраняем значение счётчика для i-й строки
    end;
  writeln;
  {выводим матрицу А и вектор результатов В}

  {в красивой рамочке :)}
  writeln('**************************************************************************');
  writeln('*                              Массив                           * Вектор *');
  writeln('**************************************************************************');
  for i:=1 to n do
    begin
      write ('* ');
      for j:=1 to m do
        write(a[i,j]:4); //выводим строку массива
      writeln('  *   ',b[i]:2,'   *');  //дописываем справа значение вектора В для этой строки
    end;  
  writeln('**************************************************************************');
end.

(52.6k баллов)