Урок "Понятие подпрограмм. Подпрограммы в языке Паскаль". 10-й класс

Разделы: Информатика

Класс: 10


Цель урока:

  • дать учащимся представление о подпрограммах и возможностях их использования;
  • показать на примерах механизм реализации подпрограмм с помощью процедур.

Задачи:

  • Образовательные:
    • использовать специальные термины при ответе на вопросы
    • формировать умение применять полученные знания в процессе создания и отладки программ
  • Развивающие:
    • развивать внимание, наблюдательность, память, логическое мышление
    • развивать умение анализировать и систематизировать необходимый для работы материал
    • развивать навыки принимать решения самостоятельно
  • Воспитательные:
    • соблюдать правила техники безопасности в кабинете информатики
    • воспитывать культуру поведения, иметь свой взгляд на способ решения поставленной задачи, уметь выслушивать противоположную точку зрения

План

I. Повторение материала.
II. Изучение нового материала.
III. Итог урока.
IV. Домашнее задание.

ХОД УРОКА

I. Повторение материала

  1. Какова структура программы?
  2. Обязателен ли заголовок программы?
  3. Перечислите разделы описаний
  4. Какие служебные слова служат для описания переменных?
  5. Какое служебное слово является началом основной части программы?
  6. Как заканчивается программа?

PROGRAM ИМЯ; (можно не писать)
1. CONST
2. TYPE
3. VAR
4. PROCEDURE, FUNCTION
BEGIN
Тело программы
END.

А сейчас будем разгадывать КЛЮЧВОД, заполняя его – повторим операторы, служебные слова языка Паскаль (Приложение 1).
(Заполненный КЛЮЧВОРД – Приложение 2)

II. Изучение нового материала

При создании программы для решения сложной задачи про­граммисты выполняют разделение этой задачи на подзадачи, под­задачи – на еще меньшие подзадачи и так далее, до легко програм­мируемых элементарных задач. Со временем у каждого программиста через некоторое время появляется большой набор собственных заготовок, неординарных решений и т. д., которые он хотел бы использовать во всех своих творениях.
Язык программирования Pascal позволяет раз­делять программу на отдельные части, которые называются под­программами. Сам термин подпрограмма говорит о том, что она подобна и подчинена основной программе. Подпрограммы решают три важные задачи, значительно облегчающие программирование:

  • избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты, т. е. сократить объем про­граммы;
  • улучшают структуру программы, облегчая понимание при разборе;
  • уменьшают вероятность появления ошибок, повышают устойчивость к ошибкам программирования и непредвиденным по­ следствиям при модификации.

Таким образом, подпрограмма – это повторяющаяся группа операторов, оформленная в виде самостоятельной программной единицы. Она записывается однократно, а в соответствующих мес­тах программы обеспечивается лишь обращение к ней по имени.
Общие принципы выделения подпрограмм:

– если в программе необходимо переписывать одни и те же последовательности команд, то стоит эту последовательность ко­манд оформить в виде подпрограммы;
– слишком длинную программу полезно разбить на составные части – подобно тому, как книгу разбивают на главы. При этом ос­новная программа становится похожей на оглавление;
– при решении задачи могут возникать слишком сложные под­ задачи. Целесообразней отладить их отдельно в небольших про­граммах. Добавление этих программ в основную задачу будет лег­ким, если они оформлены как подпрограммы;
– все, что вы сделали хорошо в одной программе, вам захочет­ся перенести в новые программы.

В языке Pascal механизм подпрограмм реали­зуется в виде ПРОЦЕДУР (PROCEDURE) и ФУНКЦИЙ (FUNCTION), которые вводятся в про­грамму с помощью своего описания, но их структура такая же, как и структура программы. Они различаются назначением и способом их использования.

Процедуры предназначены для выполнения некоторой после­довательности действий.
Чтобы использовать подпрограмму – процедуру её надо описать и к ней надо уметь обращаться.

Описание:

  1. Выбрать для неё имя.
  2. Определить параметры.
  3. Составить последовательность действий, которые надо выполнять, для получения результата.

Обращение: вызов выполнения указанных действий, для конкретных значений параметров.

Параметры бывают следующих видов:

I. Глобальные – параметры описываются в головном модуле, доступны любой подпрограмме.
I. Локальные – используются только в процедуре, они могут быть или не быть, описываются после слова VAR, с указанием типа.

II. Формальные – описываются в заголовке процедуры, к ним относятся входные и выходные параметры.
III. Входные – это и IV. Параметры – значений описываются через запятую с указанием типа. При выходе из процедуры не сохраняются.
III. Выходные – это и IV. Параметры – переменные описываются после слова VAR через запятую, с указанием типа, при выходе из процедуры сохраняются.
Эти параметры описываются в круглых скобках после имени процедуры

II. Фактические – в головном модуле при вызове процедуры.
При вызове (обращении) формальные параметры заменяются на фактические.

Формальные и фактические должны совпадать по 3-м признакам:

  • по количеству
  • по типу
  • по порядку следования.

Описание процедуры

Любая процедура начинается с заголовка, который является ее обязательной частью (в отличие от заголовка программы). Он состоит из служебного слова Procedure, за которым следует имя процедуры, а в круглых скоб­ках – список формальных параметров. После заголовка могут идти те же разделы, что и в программе. Таким образом, общий вид будет следующим:

Рrосеdиге    <имя>    (формальные параметры);
VAR (описание  локальных параметров, они могут быть или не  быть)
begin
тело процедуры
end; (конец процедуры)
BEGIN (головного модуля)
Фактические параметры
END.
Используя подпрограмму – процедуру рассмотрим несколько задач

1.Составить программу  сложения 2-х чисел, значения вводятся с клавиатуры.

2. Составить программу нахождения максимального из четырёх чисел, вводимых с клавиатуры.

uses art;
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
clrscr;
writeln('bbedite 4 chisla ');readln(a,b,c,d);

В переменную S заносим большее из двух чисел А и В.

maxim(a,b,s);

В переменную S заносим большее из двух чисел С и S.

maxim(c,s,s);

В переменную S заносим большее из двух чисел D и S.

maxim(d,s,s);}
writeln('max=',s:3:I);
readkey;
end.

Произвести отладку на компьютере.

III. Итак, мы познакомились с новым понятиям: подпрограмма, процедура. Узнали, какие параметры необходимо для работы с процедурами. Структуру процедуры. Описание.

IV. Домашнее задание

Треугольник задан координатами вершин, вычислить  периметр, площадь. Вычисление длин сторон оформить с помощью процедуры.

Объяснение:

– чтобы подсчитать  длину одной стороны необходимо  4 числа

– формула для подсчёта длины: A =

Какая функция в Паскале означает корень квадратный? – SQRT означает возведение в квадрат – SQR

– периметр находим по формуле Р = A + B + C
– формула для нахождения площади: S =
– сколько раз будем обращаться к процедуре? – 3 раза

Презентация к уроку