В произвольно заданном одномерном массиве определить минимальный и максимальный элемент - QBasic (27713)
Формулировка задачи:
Помогите пожалуйста решить
В произвольно заданном одномерном массиве определить минимальный и максимальный элемент. Если индекс максимального элемента меньше минимального - поменять значения этих элементов местами.
p.s. Видел на вашем форуме решение аналогичной задачи, но мне нужно решение простым способом. Без SWAP и т.п. Только элементарные функции. Заранее спасибо
Решение задачи: «В произвольно заданном одномерном массиве определить минимальный и максимальный элемент»
textual
Листинг программы
- DEFINT I, M-N, R
- DIM m(n-1) ' число n должно быть задано
- REM max - максимальный элемент массива
- REM min - минимальный элемент массива
- REM inmax - индекс максимального элемента
- REM inmin - индекс минимального элемента
- max=m(0) ' инициализация переменных (очень важно!!!!)
- min=m(0)
- inmax=0
- inmin=0
- FOR i=1 TO N-1
- IF m(i)>max THEN
- max=m(i)
- inmax=i
- END IF
- IF m(i)<min THEN
- min=m(i)
- inmin=i
- END IF
- NEXT i
- IF inmax<inmin THEN
- R=m(inmin)
- m(inmin)=m(inmax)
- m(inmax)=R
- END IF
- STOP
- END
Объяснение кода листинга программы
Код на языке QBasic выполняет следующие действия:
- Определяет максимальное и минимальное значение массива.
- Инициализирует переменные
max
,min
,inmax
иinmin
значением первого элемента массива. - Проходит по всем элементам массива, начиная со второго, и сравнивает каждый элемент с текущим максимальным и минимальным значением. Если элемент больше текущего максимального значения, то обновляет максимальное значение и индекс максимального значения. Если элемент меньше текущего минимального значения, то обновляет минимальное значение и индекс минимального значения.
- Проверяет, если индекс минимального значения меньше индекса максимального значения. Если это так, то выполняет обратную операцию обмена значениями между элементами с индексами
inmin
иinmax
. - Останавливает выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д