Функции
- (повторение) Использование математических функций и printf()/scanf(); параметры функций 
- Функция: запись алгоритма, преобразующего входные данные в выходное значение - Задание функции: тип имя(описание параметров) { описание локальных переменных; тело, в котором могут встречаться операторы «return выражение»; }Например:
- Вызов функции — атомарное выражение вида имя(выражение1, выражение2, …), например: 
- Тип — это тип возвращаемого значения, т. е. того, что будет использовано в качестве значения, когда мы вызовем функцию. Параметр оператора return должен быть указанного типа (либо преобразовываться к нему). 
- Описание параметров — список вида тип1 имя_переменной1, тип2 имя_переменной2, … . Параметров у функции может и не быть. 
- Описание локальных переменных — такое же, как в функции main(): строки вида тип переменная1, переменная2, …. Параметры функции — тоже локальные переменные. 
- При вызове функции: - вычисляются соответствующие параметрам выражения (справа налево)
- полученные значения присваиваются соответствующим локальным переменным, перечисленным в секции «описание параметров» функции
- выполняется тело функции до первого встреченного оператора return - в функции может быть несколько операторов return, например, внутри условного оператора 
 
- вычисляется значение выражения во встреченном операторе return 
- вычисления продолжаются с места вызова функции, причём вместо вызова подставляется вычисленное возвращаемое значение
 
- Важное свойство локальных переменных: они существуют только во время вызова функции и уничтожаются после выполнения return 
- Имена локальных переменных в разных функциях могут совпадать, на значение переменной в одной функции не влияет изменение одноимённой переменной в другой функции: - Эта программа выдаст «1 2 37», то есть значение переменной «c» в функции main() не изменится, несмотря на изменение значения переменной «c» в функции foo() 
 
- Если переменная не описана локально в данной функции (и не описана глобально), то она при выполнении данной функции «не видна», т. е. её имя не можкт быть использовано в выражениях. Так, в примере выше, из main() недоступна переменная a (строго говоря, её вообще не существует во время исполнения кода функции main()). Аналогично, переменная d недоступна из функции foo() (хотя она и её значение сохраняются, и их можно использовать после выхода из foo()). 
 
- Задание функции: 
- Возвращаемое значение функции можно не обрабатывать (например, мы почти никогда не обрабатываем возвращаемое значение scanf(), хотя оно довольно полезное (количество успешно введённых переменных). В этом случае оператор состоит из одного только вызова функции. 
Домашнее задание
 Прочитать про функции из в учебнике, задать вопрос, если что непонятно Прочитать про функции из в учебнике, задать вопрос, если что непонятно
- (упражнение) Написать функцию research(a), которая по заданному целому числу a выводит (с помощью printf()): - положительно оно, отрицательно или 0
- чётно или нечётно
- какую цифру содержит в третьей позиции (сотни)
 
- Ввести 8 чисел — координаты 4-х точек x₁, y₁, x₂, y₂, x₃, y₃, x₄, y₄ . Вывести координаты тех трёх точек, которые образуют треугольник наибольшей площади. Для вычисления площади треугольника по 6 числам (координатам трёх точек) написать функцию.
- Ввести s и t. Вычислить   
- Всё-таки попробовать решить последнюю задачу предыдущего задания 
