В двумерном массиве нечетные элементы увеличить ** 10,а остальные уменьшить ** 10(паскаль)

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

В двумерном массиве нечетные элементы увеличить на 10,а остальные уменьшить на 10(паскаль)


Информатика (29 баллов) | 63 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк в массиве:');
  var m:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив [',n,',',m,'] ***');
  var a:=MatrRandom(n,m,-99,99);
  a.Println(5); Writeln(5*a.ColCount*'-');
  a:=a.ConvertAll(x->x.IsOdd?x+10:x-10);
  a.Println(5)
end.

Пример
Количество строк в массиве: 5
Количество столбцов в массиве: 10
*** Исходный массив [5,10] ***
   66  -57   -2   69   45  -44   35  -96  -48   87
   20  -32  -14  -41  -78    2   95    5   61   99
   13   -7   86   58  -57    3  -58   14  -48   16
   85   42  -57   90  -88   56   53   92   14  -97
   84   87   93   93  -29  -32   24   42   89  -62
--------------------------------------------------
   56  -47  -12   79   55  -54   45 -106  -58   97
   10  -42  -24  -31  -88   -8  105   15   71  109
   23    3   76   48  -47   13  -68    4  -58    6
   95   32  -47   80  -98   46   63   82    4  -87
   74   97  103  103  -19  -42   14   32   99  -72
(150k баллов)
0 голосов

Var n,m,i,j:integer; a:array[1..100,1..100] of integer;
begin
readln(n,m);
for i:=1 to n do
for j:=1 to m do
readln(a[I][j]);
for i:=1 to n do
for j:=1 to m do
if a[I][j] mod 2 = 0 then a[i][j]:=a[i][j]-10
else a[i][j]:=a[i][j]+10;
for i:=1 to n do begin
for j:=1 to m do
write(a[i][j],' ');
writeln;
end;
end.

(3.4k баллов)