• Заполнить двумерный массив случайными числами. Размерность массива и диапазон генерации вводятся с клавиатуры. Составить программу, которая вычисляет сумму всех элементов массива.
    Затем организовать новый массив В, в котором заменить отрицательные элементы исходного массива на 1, а значения остальных элементов оставить без изменения. Подсчитать количество замен.

Ответы 1

  • Program primer;procedure random(c,x,y:integer; var r:integer);    begin        case c of                1 : r:=Random(ABS(Y)+ABS(x)+1)+x;                2 : r:=Random(ABS(Y)+ABS(x)+1)+y;                3 : r:=Random(Y-x+1)+x;                4 : r:=Random(x-y+1)+y;                5 : r:=Random(x+y);                6 : r:=Random(ABS(x+y))-ABS(x+y);                7 : r:=x;                8 : r:=Random(ABS(ABS(x)-ABS(y)))-ABS(x);                9 : r:=Random(ABS(ABS(x)-ABS(y)))-ABS(y);        end;   end;var  a,b: array of array of integer;  i,j,x,y,c,m,p,sum:integer;  beginRandomize;sum:=0;writeln('Кол-во строк и столбцов массива? //X,Y\\  ');read(i,j); //Размерность массиваwriteln('Диапазон чисел //от X,до Y\\ '); read(x,y); //и диапазон генерации вводятся с клавиатуры.if (x=y) thenc:=7elseif(x<0) and (y<0) then if (x<y) then c:=8elsec:=9elseif (x=0) or (y=0) then if(x<0) or (y<0) then c:=6elsec:=5elseif(x<0) or (y<0) then if (x<y) then c:=1else c:=2elseif (x<y) then c:=3else c:=4;SetLength(a,i);for  m:=0 to i-1 do  SetLength(a[m],j);  SetLength(b,i);  for  m:=0 to i-1 do  SetLength(b[m],j);    for  m:=0 to i-1 do begin  writeln();     for  p:=0 to j-1 do   begin                          random(c,x,y,a[m,p]);    {Заполнить двумерный массив случайными числами.}          sum:=sum+a[m,p];  {вычисляет сумму всех элементов массива}          write (a[m,p]:3,' ':3);           end;          end;          c:=0;           writeln('summa=',sum);   for  m:=0 to i-1 do begin {Затем организовать новый массив В  }writeln();     for  p:=0 to j-1 do  begin             if (a[m,p] <0) then          begin         b[m,p]:=1; {в котором заменить отрицательные элементы исходного массива на 1}        inc(c);  {Подсчитать количество замен.   }   end          else           b[m,p]:=a[m,p]; {а значения остальных элементов оставить без изменения }   write(b[m, p]:3, ' ':3);        end;          end;          writeln('kol=',c);          a:=NIL;          b:=NIL;     end.// ABC Pascal
    • Автор:

      kevin118
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years