В строках, где число четных элементов превышает число нечетных, нечетные элементы заменить максимумом матрицы - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Не пойму что не так сделал. Программа выводит не правильный результат. Прошу помочь с задачей. Ввести матрицу А NxM, вывести ее. В строках, где число четных элементов превышает число нечетных, нечетные элементы заменить максимальным элементом всей матрицы.

Решение задачи: «В строках, где число четных элементов превышает число нечетных, нечетные элементы заменить максимумом матрицы»

textual
Листинг программы
for i:=1 to n do for j:=1 to m do
  if a[i,j]>max then max:=a[i,j]; 
for i:=1 to n do begin 
  k:=0;
  for j:=1 to m do if Odd(a[i,j]) then Inc(k);
  if m-k>k then
    for j:=1 to m do if Odd(a[i,j]) then a[i,j]:=max;
end;
for i:=1 to n do begin
  for j:=1 to m do Write(' ',a[i,j]:3); WriteLn;
end;
end.

Объяснение кода листинга программы

  1. В первой строке кода используется цикл for, который выполняется от 1 до n (количество строк) и от 1 до m (количество столбцов).
  2. Внутри первого цикла if проверяется условие a[i,j] > max. Если это условие истинно, то значение max присваивается значению a[i,j]. Это происходит для каждой строки и каждого столбца.
  3. Во втором цикле for также используется цикл for, который выполняется от 1 до m (количество столбцов).
  4. Внутри второго цикла if проверяется условие Odd(a[i,j]). Если это условие истинно, то значение переменной k увеличивается на единицу.
  5. Затем проверяется условие m-k > k. Если это условие истинно, то для каждой строки и каждого столбца значение a[i,j] присваивается максимальному значению max.
  6. В конце кода используется третий цикл for, который выполняется от 1 до n (количество строк).
  7. Внутри третьего цикла Write выводится пробел, а затем выводится значение каждой ячейки матрицы a[i,j] (используется формат с разделителем 3 пробелов).
  8. Код завершается вызовом функции WriteLn, которая выводит новую строку.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4 из 5
Похожие ответы