Функция - это подпрограмма, которая возвращает результат (число, символьную строку и др.)
Представьте, что вы заказали товар в Интернет-магазине. С точки зрения программирования Вы вызвали некоторую подпрограмму, и в отличии от процедуры, эта подпрограмма должна вернуть результат - доставить Вам товар, который Вы заказали. Вот такие подпрограммы и называются функциями.
Оформляется функция точно также, как и процедура. Единственное отличие от процедуры, - это наличие специального оператора return,
после которого записывается значение, которое необходимо вернуть в основную программу.
Функция, которая возвращает среднее арифметическое двух целых чисел, будет выглядеть таким образом:
float average(int a, int b)
{
float avg = (a + b) / 2.;
return avg;
}
Осталось понять как вызвать эту функцию в основной программе:
Не следует вызывать функцию также как, и процедуру:
average(10, 5);
Значение, которое вернет функция, потеряется. Это как будто бы товар из Интернет-магазина никому не вручили, а выбросили. Вряд ли это понравится заказчику.
Правильнее
сохранить результат в переменной (или
вывести его на экран):
a = average(10, 5);
cout << average(10, 5);