В математике функция – это зависимость некоторой переменной от других переменных (аргументов). В отличие от математического понятия функции в программировании рассматриваются такие функции,
· для которых можно построить алгоритм (а следовательно, и программу) вычислеия значений,
· значения которых относятся к простым типам (например, значением функции не может быть вектор, массив ).
Структура функции в определенной мере по форме, также как и структура процедуры, совпадает со структурой программы, но имеет и существенные отличия:
{раздел объявления локальных объектов функции: констант,
типов, переменных:}
const…
type…
var…
Begin
{операторная часть или тело функции}
end;
Примечание. В отличие от процедуры для функции необходимо выполнять следующие требования
· в заголовке всегда указывается тип функции;
· в списке параметров записываются только те параметры, значения которых передаются (вводятся) из вызывающей программы, но не возвращаются в программу;
· значение функции, возвращаемое вызывающей программе, присваивается имени функции, поэтому операция присваивания имени функции (уже без указания параметров) вычисленного значения – обязательная в операторной части описания функции; эта операция присваивания – последняя в операторной части функции;
· обращение к функции из вызывающей программы состоит в написании имени функции и в подстановке фактических значений всех формальных параметров;
· порядок задания и типы подставляемых фактических значений должны соответствовать порядку написания и типам формальных параметров функции.
· Функция, в отличие от процедуры, не является самостоятельной подпрограммой, поэтому обращение к функции из вызывающей программы будет корректным в одном из двух случаев:
1)имя функции присваивается некоторой переменнойили