Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версия | |
| cp:obx-proc-type [2026/02/11 09:15] – iadenisov | cp:obx-proc-type [2026/02/11 10:37] (текущий) – [Использование процедурных типов] theathlete |
|---|
| При этом, нужно помнить, что **список аргументов** у //переменной процедурного типа// и самой //процедуры// **должны** совпадать. | При этом, нужно помнить, что **список аргументов** у //переменной процедурного типа// и самой //процедуры// **должны** совпадать. |
| |
| Ниже пример программы с применением в алгоритме процедурных типов, которая складывает и перемножает элементы массива, а также проверяет сортирован ли массив по возрастанию или по убыванию. | Ниже приведён пример программы, которая складывает и перемножает все целые числа в массиве, а также проверяет, отсортирован ли массив целых чисел по возрастанию или убыванию. Для этого используются: |
| | - Процедура ReduceLong, из названия и описания которой можно понять, что происходит [[https://ru.wikipedia.org/wiki/Свёртка_списка|свёртка]] массива целых чисел с результатом LONGINT. В данную процедуру передаётся массив целых чисел и процедура с сигнатурой процедурного типа CalculatorLong. Для примера были созданы процедуры Add, Sub, Mul, Div с такой сигнатурой. |
| | - Процедура ReduceBool, которая производит свёртку массива целых чисел и возвращает булево значение. В данную процедуру передаётся массив целых чисел и процедура с сигнатурой процедурного типа CalculatorBool. Для примера были созданы процедуры Greater и Less с такой сигнатурой. |
| ==== Пример ==== | ==== Пример ==== |
| |