Пятница, 24.05.2019, 16:51
Приветствую Вас, Гость |
Меню сайта
Наш опрос
Нужен ли форум на этом сайте?
Всего ответов: 1193
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Процедуры и функции в Паскале

     Далее описывается объявление и использование функций и процедур в Паскале.
Функции объявляются следующим образом:
   function <имя_функции> (<список_параметров>): <тип_результата>;
В отличие от констант и переменных, объявление подпрограммы может быть оторвано от ее описания. В этом случае после
объявления нужно указать ключевое слово forward:
   function <имя_функции> (<список_параметров>): <тип_результата>; forward

Процедуры в Паскале следует объявлять так:
   procedure <имя_процедуры> (<список_параметров>);
Если объявление процедуры оторвано от ее описания, нужно поставить после него ключевое слово forward:
   procedure <имя_процедуры> (<список_параметров>); forward;
   Описание подпрограммы должно идти после ее объявления. Оно осуществляется по следующей схеме (единой для процедур и
функций):
  
   uses <имена_подключаемых_модулей>;
   label <список_меток>;
   const <имя_константы> = <значение_константы>;
   type <имя_типа> = <определение_типа>;
   var <имя_переменной> : <тип_переменной>;
   procedure <имя_процедуры>
   <описание_процедуры>
   function <имя_функции>
   <описание_функции>;
   begin
   {начало тела подпрограммы}
       <операторы>
   end; (* конец тела подпрограммы *)

пример описания процедуры на Паскале:
  
procedure err(c:byte; s:string);
   var zz: byte;
   begin
      if c=0 then  writeln(s)              
      else  writeln('Ошибка!')
   end;


    Основное различие между функциями и процедурами в Паскале состоит в количестве возвращаемых ими значений.
Любая функция, завершив свою работу, должна вернуть основной программе (или другой вызвавшей ее подпрограмме) ровно одно
значение, причём его тип нужно явным образом указать уже при объявлении функции.
Для возвращения результата применяется специальная "переменная", имеющая имя, совпадающее с именем самой функции.
Оператор присваивания значения этой "переменной" обязательно должен встречаться в теле функции хотя бы один раз.
   Пример написания функции на Паскале:
   
    function min(a, b: integer): integer; 
    begin
       if a>b then min:= b
       else min:= a
    end;


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

Примеры решения задач на функции и процедуры в Паскале

Форма входа
Поиск
Мы в сети
Реклама
Для того чтобы не видеть рекламу в правом верхнем углу сайта пройдите простую процедуру регистрации
ФОРУМ
У нас наконецто появился форум! Добро пожаловать! Будьте первыми, задайте направление форуму! =)
--- Не стесняемся - заходим на форум! ---