Функция — фрагмент кода, который вызывается из других мест программы. Другими словами — это подпрограмма, которую можно вызывать из других частей программы, причём неограниченное количество раз. Функции используются, чтобы избегать избыточности и дублирования кода и чтобы структурировать и декомпозировать программу. Сигнатура функции — набор элементов, однозначно описывающих функцию: название, параметры (их количество и типы), возвращаемое значение функции. Основные принципы прописывания функций. Тип Unit — описывает отсутствие возвращаемого значения функции. При объявлении функции без возвращаемого значения он автоматически вставляется компилятором, вручную его указывать не нужно. Тип Unit необходим при работе с функциональными типами. Функциональный тип — особый тип, который позволяет работать с лямбда-выражениями и функциями высшего порядка. Описывает сигнатуру используемой функции и лямбда-выражения. Функции высшего порядка — функции, которые могут принимать в качестве