В матрице найти произведение всех элементов, минимальный элемент в третьем столбце - QBasic
Формулировка задачи:
В матрице n x m найти произведение всех элементов, минимальный элемент в третьем столбце. Построить вектор из максимальных элементов по строкам.
Решение задачи: «В матрице найти произведение всех элементов, минимальный элемент в третьем столбце»
textual
Листинг программы
- DEFINT A-Z
- CLS
- INPUT "Strok : ", m ' Спросим размерность
- INPUT "Stolbcov : ", n
- ' Коррекция ввода
- IF n < 3 THEN
- n = 3: COLOR 12
- PRINT "Vvedeno menshe 3 stolbcov, ispravleno na 3...": COLOR 7
- END IF
- ' Массивы
- DIM A(1 TO n, 1 TO m) AS SINGLE ' Заразервируем память(массив)
- DIM B(1 TO m) ' Вектор
- DIM Min, Max, Pr AS DOUBLE ' Мин эл, макс эл и индекс макс эл-та
- ' Заполним матрицу случайными числами и на экран её
- RANDOMIZE TIMER ' "Случайность"
- PRINT TAB(5); " Matrica"
- FOR i = 1 TO m
- FOR j = 1 TO n
- A(j, i) = INT(RND * 50 - 25)
- PRINT USING " ###"; A(j, i);
- NEXT: PRINT
- NEXT
- ' Ищем произведение эл-в матрицы и вектор, в
- ' котором лежат максимальные эл-ты каждой строки.
- Pr = 1
- FOR i = 1 TO m ' Цикл по строкам
- ' Собираем кол-ва отриц. элементов для искомой строки
- ' работаем со строкой i
- Max = A(1, i)
- FOR j = 1 TO n ' Цикл по столбцам
- Pr = Pr * CDBL(A(j, i))
- ' Раз уж "пробегаем" всю матрицу, то сразу ищем макс элемент
- IF A(j, i) > Max THEN Max = A(j, i)
- NEXT
- B(i) = Max
- NEXT
- ' Минимальный элемент в 3-ем столбце
- Min = A(3, 1)
- FOR i = 1 TO m ' Цикл по строкам
- IF A(3, i) < Min THEN Min = A(3, i)
- NEXT
- ' Пишем результат
- PRINT TAB(5); " Rezultat"
- PRINT TAB(2); " Proizv ="; Pr
- PRINT TAB(2); " Min ="; Min
- PRINT TAB(5); " Vector"
- FOR i = 1 TO m
- PRINT USING " ###"; B(i);
- NEXT
Объяснение кода листинга программы
- Задается размерность матрицы и вектора
- Проверяется корректность ввода, если размерность меньше 3, то изменяется на 3
- Зарезервировывается память для матрицы и вектора
- Матрица заполняется случайными числами от -25 до 25
- Находится произведение всех элементов матрицы и вектор, в котором лежат максимальные элементы каждой строки
- Находится минимальный элемент в третьем столбце
- Выводятся результаты на экран
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д