Найти максимальный элемент в каждом столбце матрицы - QBasic

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

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

Ребят есть проблема создал матрицу нашел количество положительных чисел в каждой строке а когда пытаюсь найти максимальное в каждом столбце из за первого задания не дает ничего сделать и получается или найти количество положительных и максимальное число в строках или такое же нов столбцах кто может дополните 2 часть моего кривого программирования. Это кривая запись просто уже не знаю что с ней сделать уже много раз переделывал уже не знаю как бы правильно сделать. Вобщем руки у меня не для программирования
Листинг программы
  1. CLS
  2. REM " Labaratornya rabota 6"
  3. REM " Ivanenko S.V. grupa ty-1304 variant 7"
  4. DIM g(5, 7)
  5. DIM otv(5)
  6. RANDOMIZE TIMER
  7. PRINT " nachalniy masiv G razmerom 5*7:"
  8. FOR n = 1 TO 5
  9. FOR p = 1 TO 7
  10. g(n, p) = INT(60 * RND - 40)
  11. PRINT g(n, p); " ";
  12. NEXT
  13. PRINT
  14. NEXT
  15. PRINT "kolichestvo pologitelnih elementov v kajdoi stroke"
  16. FOR n = 1 TO 5
  17. otv(n) = 0
  18. FOR p = 1 TO 7
  19. IF g(n, p) > 0 THEN
  20. otv(n) = otv(n) + 1
  21. END IF
  22. NEXT
  23. NEXT
  24. FOR n = 1 TO 5
  25. PRINT "v "; n; " stroke - "; otv(n)
  26. NEXT
  27. PRINT " maksimalnoe chislo v kjdom stolbce"
  28. PRINT
  29. FOR n = 1 TO 5
  30. FOR p = 1 TO 7
  31. IF g(n, p) > fmax THEN
  32. fmax = g(n, p)
  33. n1 = n
  34. p1 = p
  35. END IF
  36. NEXT
  37. g(n1, p1) = g(n, 1)
  38. g(n, 1) = fmax
  39. fmax = 0
  40. NEXT
  41. FOR n = 1 TO 5
  42. PRINT " maksimalnoe chislo v kajdom stolbce"; g(n, 1)
  43. NEXT
  44. END

Решение задачи: «Найти максимальный элемент в каждом столбце матрицы»

textual
Листинг программы
  1. FOR n = 1 TO 5
  2.   FOR p = 1 TO 7
  3.     IF g(n, p) > fmax THEN
  4.       fmax = g(n, p)
  5.       n1 = n
  6.       p1 = p
  7.     END IF
  8.   NEXT p
  9.   g(n1, p1) = g(n, 1)
  10.   g(n, 1) = fmax
  11.   fmax = 0
  12. NEXT n
  13.  
  14. FOR n = 1 TO 5
  15.   PRINT " maksimalnoe chislo v kajdom stolbce"; g(n, 1)
  16. NEXT n

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

  1. Происходит два цикла for. Первый цикл идет по строкам матрицы (n), второй - по столбцам (p).
  2. В каждой итерации второго цикла проверяется, является ли текущий элемент матрицы (g(n, p)) максимальным среди всех элементов данного столбца. Если это так, то значение этого элемента присваивается переменной fmax, а также сохраняются значения n и p, где был найден максимальный элемент.
  3. После завершения второго цикла, в каждой строке матрицы (g(n, 1)) присваивается значение максимального элемента (fmax), а значение fmax обнуляется.
  4. После завершения первого цикла, выводится максимальный элемент каждого столбца матрицы.

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


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

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

11   голосов , оценка 4.091 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы