Конспект урока "Механизм реализации подпрограмм с помощью процедур" 10 класс

а. Имя, Отчество и Фамилия автора - Елена Петровна Забаева
b. Дата создания материала: сентябрь 2008 год
c. Наименование материала: урок информатики
d. Наименование предмета, класс и тип образовательной программы, к которым относится
материал: информатика, 10 класс, общеобразовательная программа
e. Название учебного курса или методики, к которому относится предлагаемый материал:
урок информатики «Механизм реализации подпрограмм с помощью процедур».
Тема урока: «Механизм реализации подпрограмм с помощью процедур».
Цель: дать учащимся представление о подпрограммах и возможностях их использования.
Показать на примерах механизм реализации подпрограмм с помощью процедур и функций.
Задачи:
Образовательная: научиться составлять простейшие подпрограммы, умение анализировать
информацию, выделять главное.
Развивающая: развитие речи, умение делать выводы, выделять главное.
Воспитывающая: умение высказывать свое мнение, прислушиваться к чужому, работать
коллективно, способность следовать нормам поведения.
Оборудование: компьютер, мультимедийный проектор, презентация по теме урока.
План урока:
1. Орг. момент. (1 мин)
2. Актуализация и проверка знаний. (5 мин)
3. Теоретическая часть. (15 мин)
4. Практическая часть. (15 мин)
5. Д/з (2 мин)
6. Рефлексия. (5 мин)
7. Итог урока. (2 мин)
Ход урока.
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.
Процедура вычисления наименьшего общего кратного
двух натуральных чисел с использованием процедуры с параметром .
Program NOK;
const c: array[1..5] of integer = (36, 54, 72, 18, 15);
var x, y, i, m: integer;
procedure NOD(a, b: integer; var k: integer); {заголовок процедуры}
begin
while a<>b do
if a>b then a := a-b;
else b := b-a;
k:=a;
end; {конец процедуры}
begin {начало главной программы}
x := c[ 1 ];
for i : = 2 to 5 do
begin
y := c[ I ];
NOD(x, y, m); {вызов процедуры с фактическими
параметрами}
x : x * y div m;
end;
write (‘НОК =’, x)
end.
СЛАЙД 4.
Процедура вычисления наименьшего общего кратного двух натуральных чисел с
использованием процедуры без параметра.
Program NOK;
const c: array[1..5] of integer = (36, 54, 72, 18, 15);
var x, y, i, m: integer;
procedure NOK; {заголовок процедуры}
var a,b: integer;
begin
a := x; b := y;
while a<>b do
if a>b then a := a-b;
else b := b-a;
m:=a;
end; {конец процедуры}
begin {начало главной программы}
x := c[ 1 ];
for i : = 2 to 5 do
begin
y := c[ I ];
NOD; {вызов процедуры без параметров}
x : x * y div m;
end;
write (‘НОК =’, x)
end.
V. Домашнее задание.
- выучить материалы лекции.
- Задача: Используя процедуру, упорядочить значения трёх переменных a, b и c в порядке их
убывания. .
VI. Рефлексия.
Учащиеся делятся впечатлениями от урока, рассказывают, что им понравилось, а что можно
было бы сделать по другому.
VII. Итог урока. Выставление оценок.