Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 23:48   #1
PSix1_73
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 30
Сообщение Процедуры и функции

Обьясните чем отличаются друг от друга процедуры и функции, какой у них принцип работы, как их описывать и использовать?
PSix1_73 вне форума Ответить с цитированием
Старый 04.06.2009, 07:37   #2
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

В языке Pascal механизм подпрограмм реализован при помощи процедур и функций.
Процедура — это подпрограмма, которую можно вызывать по имени для выполнения определенных в ней действий. Такие
процедуры как Readln, Writeln, Break и др.
Функция аналогична процедуре, однако отличает от нее тем, что возвращает в точку вызова некоторое значение. Благодаря этому, функции, в отличие от процедур, можно использовать как составные части выражений. Такие функции, как Chr и Ord.
Передача данных в подпрограмму выполняется при помощи специальных переменных — параметров. Параметры, определенные в заголовке подпрограммы, называются формальными. Выражения, задающие конкретные значения при обращении к подпрограмме, называются фактическими параметрами. При обращении к подпрограмме ее формальные параметры замещаются фактическими параметрами.
В списке формальных параметров при объявлении процедуры или функции должны быть указаны их имена и типы. Имя параметра отделяется от типа двоеточием (":"), а
параметры друг от друга — точкой с запятой (";"). Имена параметров одного типа могут
объединяться в подсписки, в которых мена отделяются друг от друга запятой.
Между формальными и фактическими параметрами должно быть полное соотвествие.
• Должно совпадать их количество.
• Должен совпадать порядок их следования.
• Тип каждого фактического параметра должен совпадать с типом соответствующего
формального параметра.
Пример:
Код:
Procedure Primer (var X: integer; const Y: real; z, x: byte);
var
.....
begin
.....
end;
или через forward
Код:
Procedure Primer (var X: integer; const Y: real; z, x: byte); forward;
.......
Procedure Primer;
var
.....
begin
.....
end;
Функции:
Код:
Function Primeer (var X: integer; const Y: real; z, x: byte): real;
var
.....
begin
.....
Primer := Y;
end;
Вызов:
Код:
begin
    Primer (R, E; s, d);
    N := Primeer (R, E; s, d);
end.
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 04.06.2009, 07:38   #3
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Если ещё будут вопросы, то пиши!!!! Поможем!!!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 04.06.2009, 20:00   #4
PSix1_73
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 30
По умолчанию

Спасибо! Достаточно подробно!
PSix1_73 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функции и процедуры niziriska Помощь студентам 12 24.01.2009 13:57
Процедуры и функции Алeксандр Паскаль, Turbo Pascal, PascalABC.NET 1 22.01.2009 04:54
Процедуры и функции V25 Паскаль, Turbo Pascal, PascalABC.NET 1 17.11.2008 20:02