Заменить в третьем столбце все отрицательные элементы нулями, все положительные в 5-й строке их квадратами - QBasic

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

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

Не могу решить. 1.Дан массив R (M, N). Заменить в третьем столбце все отрицательные элементы нулями, все положительные элементы в 5-й строке их квадратами.

Решение задачи: «Заменить в третьем столбце все отрицательные элементы нулями, все положительные в 5-й строке их квадратами»

textual
Листинг программы
RANDOMIZE TIMER
INPUT "Введите m, n: ", m, n
DIM r(m, n)
PRINT "A="
FOR i = 1 TO m
  FOR j = 1 TO n
    r(i, j) = INT(RND * 21) - 10
    PRINT USING " ###"; r(i, j);
  NEXT
  PRINT
NEXT
FOR i = 1 TO m
  IF r(i, 3) < 0 THEN r(i, 3) = 0
NEXT
FOR j = 1 TO n
  IF r(5, j) > 0 THEN r(5, j) = r(5, j) ^ 2
NEXT
PRINT "A'="
FOR i = 1 TO m
  FOR j = 1 TO n
    PRINT USING " ###"; r(i, j);
  NEXT
  PRINT
NEXT

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

  1. RANDOMIZE TIMER - инициализация генератора случайных чисел
  2. INPUT Введите m, n:, m, n - запрос на ввод размеров матрицы
  3. DIM r(m, n) - создание матрицы r размером m на n
  4. PRINT A= - вывод заголовка для первой матрицы
  5. FOR i = 1 TO m - цикл по строкам матрицы r
  6.   FOR j = 1 TO n - цикл по столбцам матрицы r
  7.   r(i, j) = INT(RND * 21) - 10 - заполнение матрицы r случайными числами от -10 до 10
  8.   PRINT USING ###; r(i, j); - вывод элемента матрицы в формате 5 цифр
  9. NEXT - выход из цикла по столбцам
  10. PRINT - вывод строки разделения между первой и второй матрицами
  11. FOR i = 1 TO m - цикл по строкам матрицы r
  12.   IF r(i, 3) < 0 THEN r(i, 3) = 0 - замена отрицательных чисел в 3-ем столбце на 0
  13. NEXT - выход из цикла по строкам
  14. FOR j = 1 TO n - цикл по столбцам матрицы r
  15.   IF r(5, j) > 0 THEN r(5, j) = r(5, j) ^ 2 - возведение в квадрат положительных чисел в 5-й строке
  16. NEXT - выход из цикла по столбцам
  17. PRINT A'= - вывод заголовка для второй матрицы
  18. FOR i = 1 TO m - цикл по строкам матрицы r
  19.   FOR j = 1 TO n - цикл по столбцам матрицы r
  20.   PRINT USING ###; r(i, j); - вывод элемента матрицы в формате 5 цифр
  21. NEXT - выход из цикла по столбцам
  22. PRINT - вывод строки разделения между второй и третьей матрицами
  23. NEXT - выход из цикла по строкам

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


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

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

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