asyaurkova
?>

Ввести целочисленный двумерный массив n m a × , вывести его. найти максимальный и минимальный элементы массива, среди тех, значения которых кратны двум. найденные элементы удвоить, а все остальные утроить.

Информатика

Ответы

Anastasiya
// PascalABC.NET 3.0, сборка 1073
const
  nn=30;
  mm=30;
var
  a:array[1..mm,1..nn] of integer;
  m,n,i,j,imax,imin,jmax,jmin:integer;
begin
  Writeln('Введите число строк и столбцов массива: '); Read(m,n);
  Randomize;
  Writeln('*** Исходный массив ***');
  imin:=1; jmin:=1; imax:=1; jmax:=1;
  for i:=1 to m do begin
    for j:=1 to n do begin
      a[i,j]:=Random(51)-25;
      Write(a[i,j]:4);
      if a[i,j] mod 2 = 0 then begin
        if a[i,j]<a[imin,jmin] then
          begin imin:=i; jmin:=j end
        else
          if a[i,j]>a[imax,jmax] then
            begin imax:=i; jmax:=j end
      end
    end;
    Writeln
  end;
  Writeln('*** Результирующий массив ***');
  for i:=1 to m do begin
    for j:=1 to n do begin
      if (i=imin) and (j=jmin) or (i=imax) and (j=jmax) then a[i,j]:=2*a[i,j]
      else a[i,j]:=3*a[i,j];
      Write(a[i,j]:4)
    end;
    Writeln
  end
end.

Тестовое решение:
Введите число строк и столбцов массива:
10 8
*** Исходный массив ***
 -18   9  23 -18  -3  12   4 -22
  16 -24   7  -1  11   5  21 -25
  20 -11  14 -13  13 -21  13  -2
 -20   2  10 -19  -4   5  -7 -21
  16  17 -11   1   2 -18  21   0
  -2 -10  -6   3  25  16   5  -9
 -12   9   7 -21  22  -1 -25 -23
  22   0 -24  21 -23  -3   7 -15
   8   3   8  20 -10  -5  -2  13
  -6 -12  15  -3  11 -16  -1 -10
*** Результирующий массив ***
 -54  27  69 -54  -9  36  12 -66
  48 -48  21  -3  33  15  63 -75
  60 -33  42 -39  39 -63  39  -6
 -60   6  30 -57 -12  15 -21 -63
  48  51 -33   3   6 -54  63   0
  -6 -30 -18   9  75  48  15 -27
 -36  27  21 -63  44  -3 -75 -69
  66   0 -72  63 -69  -9  21 -45
  24   9  24  60 -30 -15  -6  39
 -18 -36  45  -9  33 -48  -3 -30
rodsher7740

В числе не меньше трех цифр меньше пяти, значит максимум две могут быть больше. Для того, чтобы получить максимально возможное число ставим 9 и 9 в первые разряды (число сотен и десятков тысяч) . Т. е. наше число пока будет начинаться на 99. Поскольку цифр меньше пяти минимум три, дописываем к нашему числу три четверки, поскольку это максимальное число меньшее пяти. Получаем число 99444. Видим, что нечетных чисел здесь два, а должно быть минимум три. Для того, чтобы число осталось максимальным из возможных меняем четверку в конце на тройку. Получаем окончательно 99443.

ответ: 99443

Александра-Андрей909

98653 или 99665

Объяснение:

ответ зависит от того, могут ли цифры повторятся или нет.

98653 - если не могут;

99665 - если могут.

В случае, если числа не могут повторяться:

Есть число, в котором:

по крайней мере 3 цифры меньше 7;по крайней мере 3 цифры нечётные.

То есть у нас в диапазоне 7-9 можно взять всего 2 числа, следуя из первого условия - берём 9 и 8, поскольку это два наибольших числа.

Чтобы удовлетворить второе условие надо будет взять ещё 2 нечётных числа меньше 7.

Естественно приоритет отдаётся по величине цифр, то есть 5, 3.

У нас уже есть 9853, но мы можем взять ещё одно число и оно должно быть меньше 7, то есть 6.

Мы получили набор наиболее больших чисел и теперь их надо просто скомбинировать так, чтоб получилось наибольшее число: 98653.

Проверяется довольно просто: может ли число начинаться больше, чем с 98? Нет.

Может ли какое-то число в 653 заменено на большее? Только 3 заменить на 4, но тогда мы теряем количество нечётных чисел, в результате чего надо заменять 6 на 3, что делает число меньше нынешнего.

В случае, если числа могут повторяться:

Есть число, в котором:

по крайней мере 3 цифры меньше 7;по крайней мере 3 цифры нечётные.

Теперь в диапазоне 7-9 мы берём дважды 9, поскольку это наибольшее число из возможных.

Мы уже имеем два нечётных числа, осталось взять всего одно нечётное ниже 7 - берём 5 как наивысший вариант, а остальные 2 числа должны удовлетворить первое условие, то есть 6 и 6, как наивысший вариант.

У нас есть набор чисел 99566, осталось поставить так, чтоб получилось наибольшее число: 99665.

Проверяется тоже просто: всего 2 числа могут быть выше 7, поскольку 9 это наибольший вариант, то ни с чего другого как с 99 начинаться число не может.

Оставшиеся 3 числа меньше 7, то есть они могли бы быть как максимум 666, но поскольку одно должно быть нечётным, то это 665.

Надеюсь, логика понятна.

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

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

Ввести целочисленный двумерный массив n m a × , вывести его. найти максимальный и минимальный элементы массива, среди тех, значения которых кратны двум. найденные элементы удвоить, а все остальные утроить.
Ваше имя (никнейм)*
Email*
Комментарий*

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

av52nazarov
saltikovaPavlenko
lbeglarova6
chulki-kupit
stanefimov
ktv665
barabanoveugeny
druzjkinaas22
Boss5519
Zeitlinama7067
preida-2
dariagromova54
semenovakotya577
Shishkinaanasta1997
polotovsky