Вывести на экран первые два минимальных элемента этого массива и их сумму - QBasic
Формулировка задачи:
Дан двумерный массив 5x5. Вывести на экран первые два минимальных элемента этого массива и их сумму.
Решение задачи: «Вывести на экран первые два минимальных элемента этого массива и их сумму»
textual
Листинг программы
- CLS
- RANDOMIZE TIMER
- DIM a(5, 5)
- FOR iy = 1 TO 5
- FOR ix = 1 TO 5
- a(ix, iy) = INT(RND * 50) + 1
- PRINT a(ix, iy);
- NEXT ix
- NEXT iy
- min1 = a(1, 1): min2 = a(2, 1): IF min1 > min2 THEN SWAP min1, min2
- FOR i = 3 TO 25
- ix = (i - 1) MOD 5 + 1: iy = (i + 4) \ 5
- IF a(ix, iy) < min1 THEN min2 = min1: min1 = a(ix, iy) ELSE IF a(ix, iy) < min2 THEN min2 = a(ix, iy)
- NEXT i
- PRINT "Min 1 ="; min1
- PRINT "Min 2 ="; min2
- PRINT "Suma ="; min1 + min2
Объяснение кода листинга программы
- Объединение ячеек массива в одну строку с помощью оператора PRINT.
- Создание случайного массива размером 5x5 с помощью двух вложенных циклов и функции RND.
- Нахождение первого минимального элемента массива и сохранение его в переменной min1.
- Нахождение второго минимального элемента массива и сохранение его в переменной min2.
- Если min1 больше min2, то производится обмен их значениями с помощью оператора SWAP.
- Цикл, который проходит по всем элементам массива от 3 до 25 (включительно) с шагом 5.
- Внутри цикла находятся индексы ix и iy текущего элемента массива.
- Если элемент a(ix, iy) меньше min1, то min2 присваивается значение min1, а min1 присваивается значение элемента a(ix, iy).
- Если элемент a(ix, iy) меньше min2, то min2 присваивается значение элемента a(ix, iy).
- После завершения цикла выводятся значения min1 и min2 на экран с помощью оператора PRINT.
- Сумма min1 и min2 вычисляется и выводится на экран с помощью оператора PRINT.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д