В чем различие между процедурами и функциями?
==============================================

 **В чем различие между процедурами и функциями?** 

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

 В любом языке программирования процедура просто выполняет последовательность операторов (принимая входные значения, или не принимая), а функция возвращает значение, которое можно присвоить переменной. 

 1. Функция возвращает значение, процедура — нет.   
 2. Заголовок функции обязательно содержит тип результата.   
 3. В теле функции обязательно наличие оператора, присваивающего значение имени функции.   
 4. Вызов процедуры требует отдельного оператора, вызов функции возможен в составе выражений.   
 5. Имя процедуры необходимо для вызова, имя функции — для присвоения значения.   
 6. На схемах алгоритмов вызов процедуры изображается в отдельном блоке, вызов функции — в блоке процесса или вывода. 

 Функция - подпрограмма, выполняющая какие-либо операции и возвращающая значение.   
  
 Процедура - подпрограмма, которая только выполняет операции, без возврата значения.