Слайд 2Подпрограммы
Если в программе возникает необходимость частого обращения к некоторой группе операторов, выполняющих действия
или вычисляющих выражение, то рационально сгруппировать эти операторы в блок, к которому можно обратиться по имени.
Такие самостоятельные программные блоки называются подпрограммами.
В языке Turbo Pascal подпрограммы реализованы посредством процедур и функций.
Слайд 3Процедуры
Процедура – независимая именованная часть программы, которую после однократного описания можно многократно вызывать
по имени из последующих частей программы для выполнения определённых действий.
Слайд 4Структура процедуры
Процедура представлена ОБЯЗАТЕЛЬНЫМ заголовком и телом процедуры:
procedure имя (формальные параметры);
{описательная часть}
begin
{исполнительная часть}
end;
Слайд 5Вызов процедуры
Для обращения к процедуре используется оператор вызова процедуры.
Он состоит из имени процедуры
и списка фактических параметров, отделённых друг от друга запятыми и заключенных в круглые скобки.
Слайд 6Пример. Программа, выводящая три различные линии
procedure primer (len:integer; s:char);
{форм. параметр len – длина
линии в символах,
форм. параметр s – это символ, которым рисуется линия}
var i:integer;
begin for i:=1 to len do write (s);
writeln;
end;
{далее следует основная часть программы, выводящая три различные линии}
begin primer (10, ‘-’); { вызов процедуры}
primer (20, ‘*’); { вызов процедуры}
primer (30, ‘#’); { вызов процедуры}
readln;
end. {гиперссылка на результат выполнения программы с процедурой}
Слайд 7Контрольные вопросы:
Что такое подпрограммы?
Когда удобно использовать подпрограммы?
Как реализуются в Турбо Паскале подпрограммы?
Что такое
процедура?
Какое служебное слово используется для описания процедуры?
Какова структура процедуры?
Как вызвать процедуру?
Как записываются формальные и фактические параметры процедуры?
Слайд 8Функции
Помимо процедуры подпрограммы в языке программирования Turbo Pascal могут быть реализованы с помощью
функций.
Функция состоит из заголовка и тела.
Слайд 9Заголовок функции
Заголовок состоит из зарезервированного слова function, имени функции, списка формальных параметров, заключенного
в круглые скобки, и обязательного указания типа результата:
function primer (n:real): integer;
function zadacha: boolean;
Слайд 10Тело функции
Тело функции аналогично обычной программе:
var
{описательная часть}
begin
{исполнительная часть}
имя:= результат;
end;
Слайд 11Вызов функции
Для вызова функции необходимо указать имя функции в качестве операнда в некотором
выражении:
например, writeln (primer (i));
Слайд 12Пример. Вывод членов ряда Фибоначчи (1, 1, 2, 3, 5, 8, 13, 21…)
function
fibon (n:integer):integer;
var fn, fn1, fn2, k:integer;
begin fn:=0; fn1:=1;
for k:=1 to n do
begin fn2:=fn1;
fn1:=fn;
fn:=fn2+fn1;
end;
fibon:=fn;
end;
{основная программа}
var i,n:integer;
begin write (‘kol-vo chlenov rjada’); readln (n);
for i:=1 to n do writeln (fibon (i));
readln;
end. {гиперссылка на результат выполнения программы с функцией}
Слайд 13Контрольные вопросы:
Из каких частей состоит функция?
Какое зарезервированное слово используется в заголовке функции?
В чем
разница между заголовками процедуры и функции?
В чем разница между телом процедуры и функции?
В чем разница между вызовом процедуры и функции?