sveta1308
?>

Всем ! люди добрые решением. первую отправил на проверку ! сейчас вторая. в матрице a(m x m) найти сумму элементов четных столбцов. если эта сумма положительна, то все элементы нечетных строк возвести в квадрат. в противном случае ко всем элементам побочной диагонали прибавить число 2.

Информатика

Ответы

dariagromova54

program task;

const

  m = 3;

var

  a: array[1..m, 1..m]of integer;

  i, j: integer;

  sum: integer;

  result: real;

begin

  { заполняем переменные }

  sum : = 0;

  result : = 0.0;

  writeln('');

  { заполняем массив случайным набором элементов }

  for i: =1 to m do

      begin

          for j: =1 to m do

              begin

                  a[i,j]: = random (40)-20;

                  write(a[i,j]: 4);

              end;

              writeln();

      end;

  { считаем количество элементов }

  for i: =1 to m do

      for j: =1 to m do

          sum : = sum + a[i,j];

  writeln('sum: ',sum);

  { если количество элементов > 0 - выполняем возведение в квадрат }

  if(sum > 0)then

      for i: =1 to((m div 2)+(m mod 2))do

          for j: =1 to m do

              a[i*2-1,j]: = a[i*2-1,j]*a[i*2-1,j]

  { иначе - увеличиваем элементы побочной диагонали на 2 }

  else

      for i: =1 to m do

              a[m-i+1,i]: = a[m-i+1,i]+ 2;

  for i: =1 to m do

      begin

          for j: =1 to m do

              write(a[i,j]: 4);

          writeln();

      end;

  writeln('');

end.

{*

пример результатов:

    9    5  12

  -9  -2 -15

  -4  19  -4

sum: 11

  81  25 144

  -9  -2 -15

  16 361  16

    7    2  13

  -16  -3  17

  -10 -16    3

sum: -3

    7    2  15

  -16  -1  17

  -8 -16    3

*}

 

тоже самое, но менее развёрнуто:

 

program task;

const

  m = 3;

var

  a: array[1..m, 1..m]of integer;

  i, j: integer;

  sum: integer;

  result: real;

begin

  sum : = 0;

  result : = 0.0;

  for i: =1 to m do

      for j: =1 to m do

          a[i,j]: = random (40)-20;

  for i: =1 to m do

      for j: =1 to m do

          sum : = sum + a[i,j];

  if(sum > 0)then

      for i: =1 to((m div 2)+(m mod 2))do

          for j: =1 to m do

              a[i*2-1,j]: = a[i*2-1,j]*a[i*2-1,j]

  else

      for i: =1 to m do

              a[m-i+1,i]: = a[m-i+1,i]+ 2;

end.

fygasika
// pascalabc.net 3.2, сборка 1417 от 28.03.2017 // внимание! если программа не работает, обновите версию! begin   writeln('*** исходный массив [6,7] ***');   var a: =matrrandom(6,7,-99,99);   a.println(4); writeln(4*a.colcount*'-');   writeln('*** результирующий массив [6,7] ***');   for var i: =0 to 2 do a.swaprows(2*i,2*i+1);   a.println(4) end. пример *** исходный массив [6,7] ***   16 -26 -12  33  39 -28  -6   15 -77  15  63 -30 -59 -62   -14  -3 -94  42  49  86  95   -74  75 -69 -44 -43  -2 -62   -68  82 -36 -30 -92 -88  34   -34  16  81 -67    4  -8  80 *** результирующий массив [6,7] ***   15 -77  15  63 -30 -59 -62   16 -26 -12  33  39 -28  -6   -74  75 -69 -44 -43  -2 -62   -14  -3 -94  42  49  86  95   -34  16  81 -67    4  -8  80   -68  82 -36 -30 -92 -88  34
natapetrova20017
  const     n = 6;     m = 7; var     a: array[1..n,1..m] of integer;     i,j,b: integer; procedure obmen(n1,n2: integer); var     j: integer; begin for j: = 1 to m do       begin       b: =a[n1,j];       a[n1,j]: =a[n2,j];       a[n2,j]: =b;       end; end; begin writeln('исходный массив: '); for i: = 1 to n do       begin       for j: = 1 to m do               begin               a[i,j]: =random(21)-10;               write(a[i,j]: 3,' ');               end;       writeln;       end; writeln('изменённый массив: '); obmen(1,2); obmen(3,4); obmen(5,6); for i: = 1 to n do       begin       for j: = 1 to m do               write(a[i,j]: 3,' ');       writeln;       end; end. исходный массив:   -1    8  -2    3  -7    3 -10   -4    8    6    2  -1  10  -8   -5  -7    0    2  -6  -2    4   10  -1  -6  -5    2    2  -7   7  -2    8  -8  -3    7  -2   -9  -7    9    2  -2    3  -6 изменённый массив:   -4    8    6    2  -1  10  -8   -1    8  -2    3  -7    3 -10   10  -1  -6  -5    2    2  -7   -5  -7    0    2  -6  -2    4   -9  -7    9    2  -2    3  -6   7  -2    8  -8  -3    7  -2

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Всем ! люди добрые решением. первую отправил на проверку ! сейчас вторая. в матрице a(m x m) найти сумму элементов четных столбцов. если эта сумма положительна, то все элементы нечетных строк возвести в квадрат. в противном случае ко всем элементам побочной диагонали прибавить число 2.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

tagirova1
smalltalkcoffee5
Катерина Телюкин925
vdnh451
petrowich076813
Minchenkova
gre4ka2004
reznikvi
Vika-simonenko
Ольга Сергей1822
Bmashutav16
dianabuchkina
AnastasiyaSkripin1283
Sinelnikov1650
sales