Все отрицательные элементы массива увеличить на среднее арифметическое значение положительных элементов - QBasic

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

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

Очень нужна помощь! В двухмерном массиве чисел все отрицательные элемнты массива увеличить на среднее арифметическое значение положительных элементов соответствующей строки.

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

textual
Листинг программы
REM В двухмерном массиве чисел все отрицательные элементы массива
REM увеличить на среднее арифметическое значение положительных элементов
REM соответствующей строки.
INPUT m
INPUT n
DIM a(1 TO m, 1 TO n) AS SINGLE
FOR i = 1 TO m
  FOR j = 1 TO n
    INPUT a(i, j)
  NEXT j
NEXT i
 
PRINT "Исходный массив"
FOR i = 1 TO m
  FOR j = 1 TO n
    PRINT a(i, j);
  NEXT j
  PRINT
NEXT i
 
FOR i = 1 TO m
  k = 0
  s = 0
  FOR j = 1 TO n
    IF a(i, j) > 0 THEN
      s = s + a(i, j)
      k = k + 1
    END IF
  NEXT j
  IF k <> 0 THEN
    avg = s / k
  ELSE
    avg = 0
  END IF
  FOR j = 1 TO n
    IF a(i, j) < 0 THEN a(i, j) = a(i, j) + avg
  NEXT j
NEXT
  
PRINT "Обработанный массив"
FOR i = 1 TO m
  FOR j = 1 TO n
    PRINT a(i, j);
  NEXT j
  PRINT
NEXT i
END

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

Список действий в коде:

  1. Ввод размеров массива m и n.
  2. Создание двумерного массива a размером m на n.
  3. Ввод всех элементов массива a с помощью циклов.
  4. Вывод исходного массива на экран.
  5. Для каждого столбца (строки) массива:
    • Подсчет количества положительных элементов в столбце (строке).
    • Нахождение среднего арифметического положительных элементов.
    • Увеличение всех отрицательных элементов столбца (строки) на полученное среднее.
  6. Вывод обработанного массива на экран.

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


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

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

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