Тема урока: «Процедуры и функции. Понятие подпрограмм. Механизм реализации подпрограмм с помощью
процедур и функций».
(2 урок)
Цель: закрепить знания о подпрограммах и возможностях их использования.
Показать на примерах механизм реализации подпрограмм с помощью
процедур и функций.
Задачи:
Образовательная: научиться составлять простейшие подпрограммы, умение анализировать информацию, выделять главное.
Развивающая: развитие речи, умение делать выводы, выделять главное.
Воспитывающая: умение высказывать свое мнение, прислушиваться к чужому, работать коллективно, способность следовать нормам поведения.
Оборудование: компьютер, мультимедийный проектор, презентация по теме
урока.
План урока:
-
Орг. момент. (1 мин)
-
Актуализация и проверка знаний. (5 мин)
-
Теоретическая часть. (10 мин)
-
Практическая часть. (20 мин)
-
Д/з (2 мин)
-
Рефлексия. (5 мин)
-
Итог урока. (2 мин)
Ход урока.
I. Орг. момент.
Приветствие, проверка присутствующих. Объяснение хода урока.
II. Актуализация и проверка знаний.
1. Фронтальный опрос по вопросам:
-
Что такое подпрограмма?
-
Какие преимущества она даёт?
-
Объясните назначение локальных и глобальных переменных.
-
Как происходит обмен данными с процедурой без параметров?
-
Какие бывают параметры?
-
Чем отличаются формальные и фактические параметры?
2. Проверка домашней задачи.
Учащиеся предлагают свои решения задачи. Учитель демонстрирует правильный код программы.
СЛАЙД 1.
Задача: Используя процедуру, упорядочить значения трёх переменных
a, b и c в порядке их убывания.
В основной программе появятся 3 строки:
If a>b then swap(a, b);
If a>c then swap(a, b);
If b>c then swap(a, b);
III. Теоретическая часть.
Функции предназначены для того, чтобы вычислять только одно значение, поэтому её первое отличие состоит в том, что процедура может иметь новые значения у нескольких параметров, а функция только одно (оно и будет результатом).
Второе отличие заключается в заголовке функции. Он состоит из слова Function, за которым идёт имя функции, затем в круглых скобках идёт список формальных параметров, после чего через двоеточие записывается тип результата функции. Остальное как в процедуре.
В теле функции обязательно должен быть хотя бы один оператор присваивания, где в левой части стоит имя функции, а в правой – её значение. Иначе значение не будет определено.
СЛАЙД 2. ПОДПРОГРАММЫ — ФУНКЦИИ.
Описание функции имеет вид:
function имя_функции (описание входных данных):
тип_результата;
{описание локальных переменных}
begin
{операторы}
имя _функции:=результат;
end;
После описания формальных параметров, которые являются аргументами функции, в заголовке указывается тип результата, т.е. тип самой функции. Это описание относится к имени функции, которому необходимо присвоить значение результата работы подпрограммы. Как и процедура, функция может содержать все четыре раздела описаний локальных переменных.
Описание функции – это самостоятельная часть программы, имеющая собственные переменные, которым отводится отдельное, не зависящее от основной программы место в памяти ЭВМ. Эти объясняется тот факт, что переменные, именуемые одним именем и используемые как в описании функции, так и в основной программе, фактически являются разными переменными. При выполнении программы машина не путает имена этих переменных, так как области их действия не совпадают.
Таким образом, программист может вводить в описание функции различные имена, не заглядывая в другие части программы, что особенно важно при написании больших программ.
Функции отличаются от процедур тем, что они возвращают значения. Функции используются в выражениях вместо переменных или констант. Процедуры не возвращают значения, а просто преобразуют какие-либо данные, например, перерисовывают экранное изображение. Процедуры и функции вызываются при помощи специальных операторов вызова.
Обратим внимание на следующий слайд.
СЛАЙД 3.
function zifr (x : longint): integer;
var k: integer;
begin
k := 0;
while x<>0 do
begin
inc(k);
x:=x div10;
evd;
zifr:=k;
end.
Вопросы к учащимся:
1.Как описана функция?
2.Какую задачу решает данная подпрограмма?
IV. Практическая часть.
-
Работа в парах. Вам необходимо решить задачу на вычисление наименьшего общего кратного двух натуральных чисел с использованием функции.
После выполнения групповой работы учитель демонстрирует слайд, коллективно разбираются допущенные ошибки.
СЛАЙД 5.
Процедура вычисления наименьшего общего кратного двух натуральных чисел с использованием функции.
Program NOK;
const c: array[1..5] of integer = (36, 54, 72, 18, 15);
var x, y, i: integer;
function NOD (a,b: integer): integer; {заголовок функции}
begin
while a<>b do
if a>b then a := a-b;
else b := b-a;
NOD:=a; {результат работы функции присваивается её имени}
end; {конец описания функции}
begin {начало главной программы}
x := c[ 1 ];
for i : = 2 to 5 do
begin
y := c[ I ];
x := x * y div NOD(x,y); {вызов функции}
end;
write (‘НОК =’, x)
end.
- Индивидульная работа.
Учащимся раздаются карточки с индивидуальными заданиями. В классе они начинают выполнять задания, дома заканчивают.
Задачи для индивидуальной работы:
1. Вычислить факториал числа n (n!=1*2*...*n)
2. Треугольник задан координатами своих вершин. Составить программу
вычисления его площади.
3. Вычислить площадь правильного шестиугольника по заданной стороне, используя подпрограмму нахождения площади треугольника.
4.Составьте программу нахождения наименьшего натурального N-значного числа Х (Х>=0), равного утроенному произведению своих цифр.
5. Даны натуральные числа m и n (mСоставить программу, сокращающую дробь m/n.
6. Напишите программу для определения НОД трёх натуральных чисел.
7. Напишите программу вычисления суммы квадратов простых чисел, лежащих в интервале (M,N)/
8. Напишите программу подсчёта числа чётных цифр, используемых в записи N-значного числа M/
9. Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.
10. Найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр.
-
Домашнее задание.
- выучить материалы лекции.
- Закончить решение индивидуальной задачи.
-
Рефлексия.
Учащиеся делятся впечатлениями от урока, рассказывают, что им понравилось, а что можно было бы сделать по другому.
VII. Итог урока. Выставление оценок.
|