Тема урока "Понятие вспомогательного алгоритма и подпрограммы. Функции и процедуры. Правила описания и использования подпрограмм-функций, подпрограмм- процедур"
Сегодня на уроке вы:
познакомитесь с принципом декомпозиции задачи;
узнаете, что такое вспомогательные алгоритмы, подпрограммы-процедуры и подпрограммы-функции, для чего они применяются;
научитесь описывать функции и процедуры на языке программирования Pascal.
Ранее вы изучили этапы разработки программы для решения задачи. Одним из таких этапов является построение алгоритма. Однако, в случае если задача сложная, то и алгоритм её решения сразу придумать сложно. Для того, чтобы облегчить построение алгоритма, задачу можно разбить на несколько, более простых, подзадач. Каждую из них можно решить по отдельности. Алгоритмы решения этих подзадач будут частями алгоритма решения исходной задачи. Каждая такая часть алгоритма называется вспомогательным алгоритмом.
Смотреть до 5:25 минуты, т.е. решение задачи не смотреть.
Смотреть до 4:17 минуты, т.е. решение задачи не смотреть.
(по желанию)
Пример 1
Составить вспомогательный алгоритм для Робота.
Пояснения
Пример 2
Составить программу с функцией сложения 2-х любых чисел.
program pr1;
var a, b, c: integer;
function sum(x, y: integer): integer;
begin
sum := x + y;
end;
begin
readln(a, b);
writeln(sum(a, b));
end.
Пример 3
Написать подпрограмму-функцию степени числа, где a, х –любые числа.
Пример 4
Составить программу с процедурой сложения 2-х чисел, значения вводятся с клавиатуры.
program pr3;
var a,b,s:real;
procedure summa (x,y:real; var s:real);
begin
s:=x+y;
end;
begin
writeln ('Введите 2 числа'); read (a,b);
summa (a,b,s);
writeln ('s=', s);
end.
Пример 5
Составить программу с процедурой нахождения максимального из четырёх чисел, вводимых с клавиатуры.
program pr4;
var a,b,s,c,d:real;
procedure maxim (x,y: real; var s:real);
begin
if x<y then s: =y else s: =x;
end;
begin
writeln ('Введите 4 числа '); readln (a,b,c,d);
maxim (a,b,s);
maxim (c,s,s);
maxim (d,s,s);
writeln('max=', s);
end.
Выполни задания
Изучи § 23.
Изучи примеры в этом уроке и в учебнике для подготовки к обязательной Практической работе № 11.
Важно запомнить!
Вспомогательными алгоритмы – это алгоритмы, которые работают в составе других алгоритмов и используются для решения отдельных подзадач.
Подпрограммы используются для записи вспомогательных алгоритмов при программировании.
Процедуры и функции – это два вида подпрограмм в языке Паскаль. Они записываются между разделом описания переменных и операторным блоком программы.
Процедуры могут принимать на вход и возвращать любое количество параметров.
Описание процедуры:
procedure <имя> (<параметры-значения>: <тип>; var <параметры-переменные>:<тип>);
var
<дополнительные параметры>: <тип>;
begin
<оператор 1>;
<оператор 2>;
…
<оператор n>;
end;
Вызов процедуры:
<имя> (<фактические параметры>);
Функции – это подпрограммы, которые в ходе исполнения принимают на вход некоторый набор параметров, а по завершении работы возвращают всего один простой параметр, содержащийся в переменной, имя которой совпадает с именем функции.
Описание функции:
function <имя> (<параметры-значения>: <тип>; var <параметры-переменные>: <тип>): <тип значения>;
var
<дополнительные параметры>;
begin
<оператор 1>;
<оператор 2>;
…
<имя>:=<выражение>;
…
<оператор n>;
end;
Вызов функции:
t:=<имя> (<фактические параметры>);