що повертають значення. Синтаксично процедури і функції складаються з заголовка і тіла, після якого ставиться символ кінця оператора В«;В». Заголовок містить ключове слово PROCEDURE або FUNCTION, потім слідує ім'я підпрограми. За ім'ям знаходиться необов'язкова конструкція з круглих дужок для передачі списку формальних параметрів, і якщо підпрограма є функцією, то далі розташовується тип значення через символ двокрапки. Тіло процедури, як і програми, в свою чергу може містити описи процедур і функцій. Таким чином, процедури і функції можуть бути вкладені один в одного як завгодно глибоко, при цьому тіло програми - саме верхнє в ланцюжку. Слідом за заголовком процедур/функцій замість тіла може поміщатися ключове слово FORWARD, це робиться в тому випадку, якщо опис процедури/функції розташовується в програмі після її виклику, і пов'язане з підтримуваної в Паскалі можливістю компіляції програми за один прохід [5]. Повернення значення з функції здійснюється через тимчасову змінну, яка доступна на ім'я самої функції. Таким чином, для того, щоб повернути значення в точку виклику, необхідно присвоїти це значення імені функції всередині її опису. p align="justify"> Підпрограми мови Сі представляють основну структурну одиницю мови і доступні в одному виді - функції. Кожна функція може мати кілька етапів свого створення. Перший етап - оголошення функції, яке складається з заголовка функції, списку формальних параметрів і порожнього оператора. Оголошення потрібно компілятору на стадії лінковки для того, щоб вказати існування даної функції. Заголовок функції складається з типу значення, що повертається (у разі, якщо функція не вертає значення, їй присвоюється тип void), ім'я функції і обов'язкового списку формальних параметрів. Якщо список формальних параметрів порожній, то за умовчанням в нього записується ключове слово void. Другий етап - визначення функції, в якому після заголовка в фігурних дужках йдуть оператори, що виконуються в тілі даної функції. У випадку, якщо необхідно повернути значення, використовується оператор return. Він передає необхідне значення в потік виклику і примусово завершує функцію. В одній функції може бути як завгодно операторів повернення, але вихід буде здійснюватися за першою з них. І третій етап - безпосередньо виклик функції, який може проходити нижче оголошення чи ухвали і може бути використаний всередині самої функції (рекурсія). p align="justify"> Підпрограми у Сі і Паскалі мають однаковий механізм передачі параметрів у функцію через стек, успадкований у мов більш низького рівня. Повернення значення у Сі відбувається через процесор, а тому проходить швидше повернення значення в Паскалі. Функції Сі мають більш послідовну організацію, а тому виграють в синтаксисі у підпрограм Паскаля. br/>
1.8 Підсумки аналізу порівняння мов програмування Паскаль і Сі
У розглянутих мовах програмування високого рівня Сі і Паскаль є як свої плюси, так і...