Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Инфоурок / Информатика / Другие методич. материалы / Урок "Функции: способы организации и описание. Вызов функций"

Урок "Функции: способы организации и описание. Вызов функций"



  • Информатика

Поделитесь материалом с коллегами:

Введение


XXI век называют эрой информационных технологий. Какие бы задачи ни решал сейчас ученый или специалист, для него очень  важно уметь грамотно обрабатывать информацию: искать, отбирать, анализировать и использовать ее. Именно поэтому ему не обойтись без знания информатики. Применение ЭВМ позволяет теперь переложить часть этой обработки на автоматические устройства, способные  достаточно долго работать без участия человека,  со скоростью в несколько миллионов раз превышающей скорость обработки информации человеком.

ЭВМ внедряются буквально во все области человеческой деятельности, поэтому непрерывно растет круг людей, вовлеченных в работу с ними. В условиях массового применения вычислительных машин большое значение имеет использование различных языков программирования. И это понятно - без них ЭВМ не более чем "черный ящик". Эффективность взаимодействия человека с ЭВМ тем больше, чем проще и понятнее язык общения с ЭВМ. Особый интерес представляют языки, доступные миллионам пользователей, способные привить им навыки культурного программирования.

Pascal - один из языков программирования, который помогает писать «структурированные» программы в таком виде, в котором структура программы должна непосредственно отражать структуру задачи. Эта особенность языка Pascal, а также его достаточная простота из-за интуитивной понятийности его конструкций, позволила языку завоевать прочное место среди языков программирования. Современным достижением программирования является признание преимущества структурированных программ. Вот почему Pascal широко используется инженерами и научными работниками, является официальным языком международных олимпиад по информатике. 


План урока

Тема: «Функции: способы организации и описание. Вызов функций»

Цели:

образовательные

  • формирование у студентов знаний и умений по теме, связанных с понятием функции пользователя;

  • научить применять подпрограммы-функции в решении задач на Паскале;

развивающие

  • развитие познавательного интереса к изучению языка программирования;

  • развитие алгоритмического и логического мышления, памяти, внимательности;

  • формирование компьютерной грамотности и потребности в приобретении знаний;

воспитательные

  • привитие культуры поведения;

  • привитие навыков коллективной и самостоятельной работы.

Тип урока: комбинированный

Оборудование и программное обеспечение урока:

  • интерактивный комплекс;

  • операционная система Windows 7;

  • среда объектно-ориентированного программирования Delphi 7;

  • компьютерная презентация в Power Point.

Методы обучения: объяснительно-иллюстративный, исследовательский, практический.


Ход урока.


1. Организационный момент.

Приветствие. Проверка отсутствующих. 


2. Мотивация. Сообщение темы и цели урока.

Ребята, скажите, с чего начинается урок физической культуры? (Ответ: с разминки). Давайте проведем своеобразную разминку на эрудицию "Ребусы". (Приложение). Ребята, тема сегодняшнего урока "Функции: способы организации и описание. Вызов функций".

Целями урока являются: сформировать знания и умения по данной теме и научить применять подпрограммы-функции в решении задач на языке Паскаль.


3. Актуализация опорных знаний и умений.

На предыдущих уроках вы познакомились с понятием подпрограмма, со структурой подпрограммы и видами подпрограмм. Ребята, давайте повторим.

Вопросы по теме:

        1. Что такое подпрограмма? ( Подпрограмма – это специальным образом оформленный алгоритм, который может многократно использоваться при решении более общей задачи)

        2. Какие задачи решают подпрограммы? (1. Избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты; 2. Улучшают структуру программы, облегчая ее понимание; 3. Повышают устойчивость к ошибкам программирования и непредвиденным последствиям при модификациях программы)

        3. Где в программе описывается подпрограмма? (Описание подпрограммы располагается между разделом var главной программы и ее программным блоком (первым begin). Подпрограмм может быть несколько, их описания располагаются в произвольном порядке одно за другим.)

        4. Назовите виды подпрограмм.  (процедуры и функции)

        5. Скажите, как описываются процедуры на языке Паскаль? (Procedure Имя (формальные параметры); описание переменных; begin инструкции; end;)

        6. Какие параметры называются "формальные" и какие - "фактические"? (Фактические параметры - находятся в главной программе и указываются при вызове подпрограммы; формальные параметры – находятся в подпрограмме и указываются при ее описании).

        7. Скажите, как выполнить вызов процедуры в программе? (Имя (фактические параметры);)

        8. Какие переменные называются глобальными, а какие локальными переменными? (Глобальные переменные - это переменные в Основной программе; Локальные переменные- это переменные в подпрограмме.)


4. Изложение нового материала

Молодцы, ребята. Откройте свои тетради, запишите дату и тему урока. Ребята, сегодня 28 марта 2016 года. Как вы знаете, этот год у нас - год российского кино. Так вот, сегодня день рождения Иннокентия Смоктуновского - известного советского и российского актера театра и кино, Народного артиста СССР и Андрея Панина - советского и российского актера театра и кино, режиссера, Заслуженного артиста РФ.

Итак, приступим к изучению новой темы. (Конспект нового материала)


Функция - это часть программы, выполняющая некоторое законченное действие и возвращающая результат своего выполнения. Каждая функция имеет имя, список параметров, тип возвращающего значения.

Описание функции. Описание функции состоит из заголовка и тела. Однако описание заголовка имеет 2 отличия: прежде всего для функций используется ключевое слово function. Кроме того, поскольку функции всегда возвращают результат, завершается строка заголовка типом возвращаемого значения. Таким образом, для объявления функции мы получаем следующий синтаксис:

function Имя (формальные параметры) : тип результата;

раздел описания функции;

begin

Исполняемая часть функции; Имя функции := результат;

end;

Возвращаемое значение может быть любого типа, кроме файлового. Единственным дополнением является то, что в теле функции обязательно должна присутствовать хотя бы одна операция присваивания, в левой части которой должно быть либо имя функции, либо ключевое слово result. Именно это выражение и определяет возвращаемое функцией значение.

Вызов функции. Обращение к функции является операндом в выражении. То есть:

идентификатор := имя функции(фактические параметры);


Пример. Требуется найти (x!-y!)*d!

Опишем функцию вычисления факториала.

function factorial(n:integer):integer;

var

p,i:integer;

Begin

p:=1;

for i:=2 to n do p:=p*i;

factorial:=p;

end;

Вызывать данную функцию в программе можно так:

f:=(factorial (x)-factorial (y))*factorial (d)

5. Решение задач

Преподаватель: Ребята, посмотрите на доску. Скажите, здесь описана процедура или функция?


1. ________ MaxNum(a,b:integer):integer;

var max: integer;

begin

if a>b then max:=a else max:=b;

MaxNum:=max;

end;


2. ________ MaxNum(a,b:integer; var max:integer);

begin

if a>b then max:=a else max:=b;

end;


3. ________Add(x,y: integer):integer;

begin

Add:=x+y;

end;


Молодцы. А теперь решим следующие задачи.

Задача 1. Написать программу нахождения суммы максимального и минимального элемента целочисленного массива, используя подпрограмму-функцию нахождения максимального и минимального элемента.

Текст программы:

program Project1;

{$APPTYPE CONSOLE}

uses SysUtils;

type

tArr=array[1..100] of integer;

var

MasA:tArr; i,n:byte; sum:integer;

function MaxEl(Mas:tArr;n:byte):integer;

var m:integer;

begin

m:=Mas[1];

for i:=2 to n do

if m

MaxEl:=m;

end;

function MinEl(Mas:tArr;n:byte):integer;

var m:integer;

begin

m:=Mas[1];

for i:=2 to n do

if m>Mas[i] then m:=Mas[i];

MinEl:=m;

end;

begin

randomize;

writeln('Vvedite n'); readln(n);

for i:=1 to n do MasA[i]:=random(10)-3;

sum:=MaxEl(MasA,n)+MinEl(MasA,n);

writeln('Elementi massiva: ');

for i:=1 to n do write(MasA[i],' ');

writeln;

writeln('Summa = ',sum);

readln;

end.


Анализ программы

  • Назовите глобальные и локальные переменные.

  • Назовите фактические и формальные параметры.

  • Как в основной программе осуществляется обращение к подпрограмме?


Задача 2. Найти наибольшее число из 4 заданных чисел.   

Текст программы:

program Project1;

{$APPTYPE CONSOLE}

uses SysUtils;

var a,b,c,d,n:integer;

function MaxNum(x,y:integer):integer;

var max:integer;

begin

if x>y then max:=x else max:=y;

MaxNum:=max;

end;

begin

writeln('Vvedite a,b,c,d'); readln(a,b,c,d);

n:=MaxNum(MaxNum(a,b),MaxNum(c,d));

writeln('Maksimalnoe chislo = ',n); readln;

end.


6. Закрепление

  1. Что такое подпрограмма-функция в Pascal?

  2. Где объявляется в основной программе подпрограмма-функция?

  3. Как объявляется подпрограмма-функция?

  4. Как вызывается в основной программе подпрограмма-функция?


7. Рефлексия

Завершите фразу:

  1. Сегодня я узнал(а)…

  2. Было интересно…

  3. Было трудно…

  4. Я понял(а), что…

  5. Теперь я могу…

  6. Я почувствовал(а), что…

  7. Я приобрел(а)…

  8. Я научился(ась)…

  9. У меня получилось …

  10. Я смог(ла)…

  11. Меня удивило…

  12. Мне захотелось…


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

1) Выучить тему сегодняшнего урока.

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


9. Итог урока

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

По итогам работы на уроке активные студенты получают хорошие оценки за урок.

Преподаватель: Спасибо вам за урок. До свидания.


Заключение


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

Эта компьютерная грамотность - непременное условие пригодности человека к практически любой профессиональной деятельности.

Ведь вся компьютерная техника призвана помогать человеку, но для того, чтобы разъяснить компьютеру, что Вы от него хотите, нужно уметь говорить с ним на одном языке.

Для понимания того, как работает компьютер, как управлять и использовать компьютерную мощь в решении ваших задач.




Приложение


"Ребусы"









9


Автор
Дата добавления 01.05.2016
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров182
Номер материала ДБ-062237
Получить свидетельство о публикации

Похожие материалы

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