Автор: Stels7xx Scorpion, 10 Октября 2010 в 20:57, курс лекций
Подпрограммы.
Подпрограмма – поименованная логически законченная группа операторов языка, которую можно вызвать для выполнения по имени любое количество раз из различных мест проги. Блок может содержать в себе другие блоки. Блок, который не входит в другой блок, называется глобальным. Блок, входящий в состав другого блока – локальный. Объявление называется докальным для подпроги, если оно создается данной подпроге. Глобальное объявление – оно создается в объемлющей проге или в глобальном блоке. С каждым объявлением имени связана область его действия и вне своей области действия имя не существует. Областью действия имени явяляется часть блока от точки объявления до конца текущего уровня вложенности, включая вложенные подпроги, за исключнием тех вложенных подпрог, в которых имеются другие объявления того же имени. Не допускаются повторные объявления имени на одном уровне вложенности. Сущ 2 вида подпрог: процедуры и функции. Подразделяются: встроенные и определенные пользователем. Встроенные процедуры и функции являются частью языка и используются без их предварительного описания в проге. Процедуры и функции пользователя организуются програмером и являются локальными блоками. Их предварительное описание обязательно.
Принцип локализации.
С целью организации коллективной работы паскаль разрешает в любой подпроге или модуле вводить для внутренних потребностей любые типы значений и программные элементы. Принцип локализации заключается в том, что имена, вводимые в употребеление в подпроге имеют силу только только в данной подпроге. Если такое имя описано вне тела модуля, то область действия данного описания на подпрогу не распространяется.
Program q; var y:real; x:chat; const c=10; procedure al(x,z:real); var c:real;
Begin c:=x+z; x:=2*x; y:=1; writeln (c,x,y); end; begin x:=’a’; y:=0.5; al(y,0.1);
writeln (c,x,y); end.