«Процедуры и функции. Понятие подпрограмм. Механизм реализации подпрограмм с помощью процедур и функций»




Скачать 50.65 Kb.
Дата 02.10.2016
Размер 50.65 Kb.
Тема урока: «Процедуры и функции. Понятие подпрограмм. Механизм реализации подпрограмм с помощью

процедур и функций».

(2 урок)

Цель: закрепить знания о подпрограммах и возможностях их использования.

Показать на примерах механизм реализации подпрограмм с помощью

процедур и функций.
Задачи:

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

Развивающая: развитие речи, умение делать выводы, выделять главное.

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

урока.


План урока:

  1. Орг. момент. (1 мин)

  2. Актуализация и проверка знаний. (5 мин)

  3. Теоретическая часть. (10 мин)

  4. Практическая часть. (20 мин)

  5. Д/з (2 мин)

  6. Рефлексия. (5 мин)

  7. Итог урока. (2 мин)



Ход урока.
I. Орг. момент.

Приветствие, проверка присутствующих. Объяснение хода урока.



II. Актуализация и проверка знаний.

1. Фронтальный опрос по вопросам:

  1. Что такое подпрограмма?

  2. Какие преимущества она даёт?

  3. Объясните назначение локальных и глобальных переменных.

  4. Как происходит обмен данными с процедурой без параметров?

  5. Какие бывают параметры?

  6. Чем отличаются формальные и фактические параметры?



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, которые делятся на каждую из своих цифр.




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

- выучить материалы лекции.

- Закончить решение индивидуальной задачи.


  1. Рефлексия.

Учащиеся делятся впечатлениями от урока, рассказывают, что им понравилось, а что можно было бы сделать по другому.
VII. Итог урока. Выставление оценок.


База данных защищена авторским правом ©infoeto.ru 2022
обратиться к администрации
Как написать курсовую работу | Как написать хороший реферат
    Главная страница