Функции для работы с массивами
max, min, sum, avg — анализ числовых данных без циклов
Что это за функции?
В Idyllium есть готовые функции для быстрого анализа числовых массивов:
max(arr)— возвращает наибольшее значение в массиве;min(arr)— возвращает наименьшее значение;sum(arr)— возвращает сумму всех элементов;avg(arr)— возвращает среднее арифметическое.
Эти функции работают и со статическими (array), и с динамическими (dyn_array) массивами.
Общий синтаксис
Функции принимают массив в качестве аргумента и возвращают результат:
Всё, что нужно — передать имя массива. Никаких циклов, индексов и промежуточных переменных.
Типы данных и совместимость
Функции работают только с числовыми массивами — int или float. Попытка передать строковый или логический массив вызовет ошибку:
Тип возвращаемого значения
Функции max(), min() и sum() возвращают значение того же типа, что и ячейки массива:
Особенность функции avg()
Среднее арифметическое вычисляется как sum(arr) / arr.length(). Поскольку в Idyllium деление всегда даёт float, функция avg() всегда возвращает float, даже если массив состоит из целых чисел:
Это сделано для точности: среднее может быть дробным, даже если все исходные числа — целые.
Примеры использования
Почему это удобно?
Без этих функций пришлось бы писать циклы вручную:
А с функцией — достаточно одной строчки: sum(arr).
Это делает код короче, чище и менее подверженным ошибкам.