Найти максимальный элемент в каждом столбце матрицы - QBasic
Формулировка задачи:
Ребят есть проблема создал матрицу нашел количество положительных чисел в каждой строке а когда пытаюсь найти максимальное в каждом столбце из за первого задания не дает ничего сделать и получается или найти количество положительных и максимальное число в строках или такое же нов столбцах кто может дополните 2 часть моего кривого программирования. Это кривая запись просто уже не знаю что с ней сделать уже много раз переделывал уже не знаю как бы правильно сделать. Вобщем руки у меня не для программирования
Листинг программы
- CLS
- REM " Labaratornya rabota 6"
- REM " Ivanenko S.V. grupa ty-1304 variant 7"
- DIM g(5, 7)
- DIM otv(5)
- RANDOMIZE TIMER
- PRINT " nachalniy masiv G razmerom 5*7:"
- FOR n = 1 TO 5
- FOR p = 1 TO 7
- g(n, p) = INT(60 * RND - 40)
- PRINT g(n, p); " ";
- NEXT
- NEXT
- PRINT "kolichestvo pologitelnih elementov v kajdoi stroke"
- FOR n = 1 TO 5
- otv(n) = 0
- FOR p = 1 TO 7
- IF g(n, p) > 0 THEN
- otv(n) = otv(n) + 1
- END IF
- NEXT
- NEXT
- FOR n = 1 TO 5
- PRINT "v "; n; " stroke - "; otv(n)
- NEXT
- PRINT " maksimalnoe chislo v kjdom stolbce"
- FOR n = 1 TO 5
- FOR p = 1 TO 7
- IF g(n, p) > fmax THEN
- fmax = g(n, p)
- n1 = n
- p1 = p
- END IF
- NEXT
- g(n1, p1) = g(n, 1)
- g(n, 1) = fmax
- fmax = 0
- NEXT
- FOR n = 1 TO 5
- PRINT " maksimalnoe chislo v kajdom stolbce"; g(n, 1)
- NEXT
- END
Решение задачи: «Найти максимальный элемент в каждом столбце матрицы»
textual
Листинг программы
- FOR n = 1 TO 5
- FOR p = 1 TO 7
- IF g(n, p) > fmax THEN
- fmax = g(n, p)
- n1 = n
- p1 = p
- END IF
- NEXT p
- g(n1, p1) = g(n, 1)
- g(n, 1) = fmax
- fmax = 0
- NEXT n
- FOR n = 1 TO 5
- PRINT " maksimalnoe chislo v kajdom stolbce"; g(n, 1)
- NEXT n
Объяснение кода листинга программы
- Происходит два цикла for. Первый цикл идет по строкам матрицы (n), второй - по столбцам (p).
- В каждой итерации второго цикла проверяется, является ли текущий элемент матрицы (g(n, p)) максимальным среди всех элементов данного столбца. Если это так, то значение этого элемента присваивается переменной fmax, а также сохраняются значения n и p, где был найден максимальный элемент.
- После завершения второго цикла, в каждой строке матрицы (g(n, 1)) присваивается значение максимального элемента (fmax), а значение fmax обнуляется.
- После завершения первого цикла, выводится максимальный элемент каждого столбца матрицы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д