Вывести на экран первые два минимальных элемента этого массива и их сумму - QBasic

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

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

Дан двумерный массив 5x5. Вывести на экран первые два минимальных элемента этого массива и их сумму.

Решение задачи: «Вывести на экран первые два минимальных элемента этого массива и их сумму»

textual
Листинг программы
  1. CLS
  2. RANDOMIZE TIMER
  3. DIM a(5, 5)
  4.  
  5. FOR iy = 1 TO 5
  6. FOR ix = 1 TO 5
  7. a(ix, iy) = INT(RND * 50) + 1
  8. PRINT a(ix, iy);
  9. NEXT ix
  10. PRINT
  11. NEXT iy
  12. PRINT
  13.  
  14. min1 = a(1, 1): min2 = a(2, 1): IF min1 > min2 THEN SWAP min1, min2
  15.  
  16. FOR i = 3 TO 25
  17. ix = (i - 1) MOD 5 + 1: iy = (i + 4) \ 5
  18. IF a(ix, iy) < min1 THEN min2 = min1: min1 = a(ix, iy) ELSE IF a(ix, iy) < min2 THEN min2 = a(ix, iy)
  19. NEXT i
  20.  
  21. PRINT "Min 1 ="; min1
  22. PRINT "Min 2 ="; min2
  23. PRINT "Suma ="; min1 + min2

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

  1. Объединение ячеек массива в одну строку с помощью оператора PRINT.
  2. Создание случайного массива размером 5x5 с помощью двух вложенных циклов и функции RND.
  3. Нахождение первого минимального элемента массива и сохранение его в переменной min1.
  4. Нахождение второго минимального элемента массива и сохранение его в переменной min2.
  5. Если min1 больше min2, то производится обмен их значениями с помощью оператора SWAP.
  6. Цикл, который проходит по всем элементам массива от 3 до 25 (включительно) с шагом 5.
  7. Внутри цикла находятся индексы ix и iy текущего элемента массива.
  8. Если элемент a(ix, iy) меньше min1, то min2 присваивается значение min1, а min1 присваивается значение элемента a(ix, iy).
  9. Если элемент a(ix, iy) меньше min2, то min2 присваивается значение элемента a(ix, iy).
  10. После завершения цикла выводятся значения min1 и min2 на экран с помощью оператора PRINT.
  11. Сумма min1 и min2 вычисляется и выводится на экран с помощью оператора PRINT.

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


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

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

13   голосов , оценка 4.308 из 5

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

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

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