русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2015-06-12; просмотров: 503; Нарушение авторских прав


 

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

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

Описание процедуры производится в разделе описаний и имеет следующий общий вид:

 



Procedure <идентификатор>[(описание формальных параметров)];

<раздел описаний>

begin

<список команд>

end;

 



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

 



<идентификатор>[(<список фактических параметров>)].

 



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

 



Описание функций производится в разделе описаний и имеет следующий общий вид:

 



Function <идентификатор>[(описание формальных параметров)]:<тип результата>;

<раздел описаний>

begin

<список команд>

end;

 



Для передачи результата в программу выполняется операция присваивания вида <идентификатор>:=<выражение>;

 



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

 



<идентификатор>[(<список фактических параметров>)].

 



Раздел описаний для функций и процедур имеет тот же смысл и структуру, что и для главной программы.

Если в разделе описаний процедуры или функции описаны некоторые элементы, то они являются определенным только для этой процедуры или функции и вложенных в них элементов.

Выполняется правило изменения описания элементов с одинаковыми идентификаторами во вложенных элементах. Действительным является самое последнее из предшествующих описаний.

Формальные параметры описываются в заголовке процедуры или функции и являются локальными. Они используются для программирования кода. При вызове процедуры или функции формальные параметры заменяются фактическими. При этом типы параметров должны совпадать. Типы совпадают, только если при описании формальных и фактических переменных использовались одни и те же имена типов (предопределенных или определенных программистом).

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

Описанию формальных параметров – переменных (передаваемых по ссылке) перед ними должно стоять зарезервированное слово var.

 



Пример

 

Procedure pr1(x,y:real;var z:integer);

 



Описаны формальные параметры – значения x и y и параметр — переменная z.

 



Function fn1(a,b:integer):real;

 



Описаны формальные параметры – значения a и b.

 



Пример

 

Program prim10;

Var

d,e:integer;

procedure pr2(b,c:integer);

var

v:real;

Begin

v:=(b+c)/3.56;

Writeln('v=',v:6:2);

End;

Begin

Write('d=');

Readln(d);

For e:=1 to 20 do

Pr2(d,e)

End.

 



Процедура производит вычисление и печать значений переменной v, определенной как локальная в процедуре.

 



Program prim11;

Var

d,e:integer;

function fn2(b,c:integer):real;

Begin

Fn2:=(b+c)/3.56;

End;

Begin

Write('d=');

Readln(d);

For e:=1 to 20 do

Writeln('v=',fn2(d,e):6:2);

End.

 



Функция используется для вычисления значения выражения, которое распечатывается в основой программе.

 





<== предыдущая лекция | следующая лекция ==>
Цикл с параметром (цикл со счетчиком). | Массивы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.363 сек.