Тема урока: “Процедуры и функции. Понятие подпрограмм. Механизм реализации подпрограмм с помощью процедур”.
Цель: дать учащимся представление о подпрограммах и возможностях их использования. Показать на примерах механизм реализации подпрограмм с помощью процедур и функций.
Задачи:
Образовательная: научиться составлять простейшие подпрограммы, умение анализировать информацию, выделять главное.
Развивающая: развитие речи, умение делать выводы, выделять главное.
Воспитывающая: умение высказывать свое мнение, прислушиваться к чужому, работать коллективно, способность следовать нормам поведения.
Оборудование: компьютер, мультимедийный проектор, презентация по теме урока.
План урока:
Ход урока
I. Орг. момент.
Приветствие, проверка присутствующих. Объяснение хода урока.
II. Актуализация и проверка знаний.
Фронтальный опрос по вопросам:
- Что такое программа?
- Какова структура программы?
- С чего начинается основная часть программы? Как её закончить?
- Обязателен ли заголовок программы?
- Какие разделы описаний вы знаете?
- С чего начинается раздел констант?
- Как описать переменные?
III. Теоретическая часть. Лекция.
Язык программирования Pascal позволяет разделять программу на отдельные части, которые называются подпрограммами. Термин подпрограмма говорит о том, что она подобна и подчинена основной программе.
Подпрограмма - это повторяющаяся группа операторов, оформленная в виде самостоятельной программной единицы. Она записывается однократно, а в соответствующих местах программы обеспечивается лишь обращение к ней по имени
Подпрограммы решают три важные задачи, значительно облегчающие программирование:
- избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты, т.е. сократить объём программы;
- улучшат структуру программы, облегчая понимание при разборе;
- уменьшают вероятность появления ошибок, повышают устойчивость к ошибкам программирования и непредвиденным последствиям при модификации.
Подпрограммы имеют структуру, аналогичную главной программе. Они содержат заголовок со специальным словом — признаком подпрограммы, имя и, при необходимости, списки передаваемых на обработку и получаемых из подпрограммы данных. Затем могут располагаться все имеющиеся в главной программе разделы описаний: меток, констант, типов и переменных. В этих разделах описываются данные, используемые только внутри подпрограммы и являющиеся промежуточными при её выполнении. Такие данные называются локальными. В подпрограмме могут участвовать переменные, описанные в главной программе. Эти данные называются глобальными, их значения и подпрограмма, и главная программа берут из общей памяти.
Подпрограммы могут быть стандартными, определёнными системой Pascal, и собственными, т.е. созданные отдельным пользователем.
Подпрограммы вызываются из определённого места программы, выполняют некоторые действия, после чего возвращают управление в место вызова.
Подпрограммы делятся на две категории: процедуры и функции. Процедура — подпрограмма, имеющая любое количество входных и выходных данных.
Любая процедура начинается с заголовка, который является её обязательной частью. Он состоит из служебного слова Procedure, за которым следует имя процедуры, а в круглых скобках — список формальных параметров. После заголовка могут идти те же разделы, что и в программе.
Procedure <имя> [(формальные параметры)]
begin
тело процедуры
end.
Результат выполнения процедуры — это одно или несколько значений. Оно передаётся в основную программу как значение её параметра. При вызове процедуры её формальные параметры заменяются фактическими в порядке их следования.
Процедура может быть описана без параметров и с параметрами. Параметры -это данные из заголовка процедуры, как передаваемые её на обработку, так и получаемые в виде результатов.
СЛАЙД 1. ПРОЦЕДУРЫ БЕЗ ПАРАМЕТРОВ
Описание процедуры без параметров имеет вид:
procedure имя;
{описание локальных переменных}
begin
{операторы}
end;
Процедура без параметров может реализовывать любой алгоритм. Все переменные, над которыми производят действия операторы процедуры, определяются в вызывающей программе, им присваиваются необходимые для выполнения процедуры значения.
Для удобства передачи данных в процедуру и получения из неё результата используются формальные и фактические параметры.
Формальные — условные обозначения в описании процедуры — описываются в её заголовке. Фактические — с которыми требуется выполнить процедуру — перечисляются при вызове процедуры. Формальные и фактические параметры должны соответствовать по количеству, типу и порядку следования. Формальные параметры описываются только в заголовке процедуры и больше нигде. Их описание похоже на описание данных в разделе переменных и может также содержать слово var.
СЛАЙД 2. ПРОЦЕДУРЫ С ПАРАМЕТРАМИ
Процедура NOD c параметрами может иметь заголовок:
procedure NOD (a,b: integer; var k: integer);
Вызов этой процедуры: NOD (x,y,m);
Переменные в заголовке процедуры — формальные параметры, заменяемые при выполнении процедуры на конкретные значения переменных Х и У. В заголовке процедуры NOD описаны формальные параметры: a и b — входные данные , для которых находится наибольший общий делитель; k — результат работы процедуры. При вызове процедуры переменная a примет значение х, а переменная b — значение y. Результат работы процедуры при вызове попадёт в ячейку с именем m, которой соответствует формальный параметр k.
IV. Практическая часть.
А теперь применим полученные теоретические знания на практике. Решим задачу: Составить процедуру вычисления наименьшего общего кратного двух натуральных чисел. (с использованием процедуры с параметром, процедуры без параметра, функции.)
Учащиеся решают задачу в группах (в среде редактора Pascal ) :
- 1 группа - решение задачи с использованием процедуры с параметром;
- 2 группа - решение задачи с использованием процедуры без параметра;
Учитель контролирует работу групп. После того, как все группы справились с задачей, учитель демонстрирует слайды с правильным решением.
СЛАЙД 3
Процедура вычисления наименьшего общего кратного
двух натуральных чисел с использованием процедуры с параметром.
СЛАЙД 4
Процедура вычисления наименьшего общего кратного двух натуральных чисел с использованием процедуры без параметра
V. Домашнее задание.
- выучить материалы лекции.
- Задача: Используя процедуру, упорядочить значения трёх переменных a, b и c в порядке их убывания.
VI. Рефлексия.
Учащиеся делятся впечатлениями от урока, рассказывают, что им понравилось, а что можно было бы сделать по другому.
VII. Итог урока. Выставление оценок.