Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
| cp:obx-proc-type [2026/02/11 09:10] – 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 с такой сигнатурой. |
| ==== Пример ==== | ==== Пример ==== |
| |