Модули - Pascal ABC
Формулировка задачи:
помогите пожалуйста, не могу составить модуль для этой задачи!) у меня задача по массивам выглядит так: В произвольно заданном одномерном массиве определить минимальный и максимальный элементы и поменять их значения местами.
А само решение такое:
Решение задачи: «Модули»
textual
Листинг программы
unit modul; interface const n=5; type mas=array [1..n] of integer; procedure vvod(var a:mas); procedure min_max(a:mas;var imin,imax:integer); procedure obmen(var a:mas;imin,imax:integer); implementation procedure vvod(var a:mas); var i:integer; begin writeln(' исходный массив '); for i:=1 to n do begin a[i]:=random(10); write(a[i]:4); end; writeln; end; procedure min_max(a:mas;var imin,imax:integer); var i:integer; begin imin:=1; imax:=1; for i:=2 to n do if a[i]<a[imin] then imin:=i else if a[i]>a[imax] then imax:=i; writeln(' минимальный элемент a[',imin,']=',a[imin]); writeln(' максимальный элемент a[',imax,']=',a[imax]); end; procedure obmen(var a:mas;imin,imax:integer); var i,c:integer; begin c:=a[imin]; a[imin]:=a[imax]; a[imax]:=c; writeln(' обмен минимального и максимального элемента'); for i:=1 to n do write(a[i]:4); end; end.
Объяснение кода листинга программы
- В модуле объявлены константы: n = 5 (размер массива), а также тип массива mas = array [1..n] of integer (тип данных для массива, содержащего целые числа).
- Далее идут три процедуры: vvod, min_max, obmen.
- В процедуре vvod происходит ввод исходного массива. Для этого используется цикл for, который выполняет запись в массив a случайного числа из диапазона от 0 до 9 (random(10)). После этого числа выводятся на экран (writeln).
- В процедуре min_max находится минимальный и максимальный элементы массива a. Для этого используется ещё один цикл for, который сравнивает каждый элемент массива с первым элементом (a[1]). Если текущий элемент меньше, то обновляется значение переменной imin, если больше — значение переменной imax.
- В процедуре obmen происходит обмен минимального и максимального элементов массива a. Для этого используется ещё один цикл for, который выводит все элементы массива на экран (writeln).
- В конце модуля стоит интерфейс, который содержит описание функций (константы и типы данных) и их тела (реализацию).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д