Планирование уроков на учебный год (по учебнику К.Ю. Полякова, Е.А. Еремина, углубленный уровень)



Уроки 43 - 44
§25. Функции




Содержание урока

Что такое функция?

Функции в других языках программирования

Примеры функций

Логические функции

Рекурсия

Выводы

Вопросы и задания

Практическая работа №22 «Функции»

Практическая работа №23 «Функции-2»


Что такое функция?


Ключевые слова:

• функция	
• вызов функции	
• параметры
• рекурсивная функция

Представьте себе, что вы заказываете товар с доставкой по телефону или в интернет-магазине. Если говорить на языке программистов, вы вызываете вспомогательный алгоритм. Но, в отличие от процедуры, исполнитель этого алгоритма не только выполняет какие-то действия, но и возвращает результат — товар, который вам привозит курьер. Это второй тип вспомогательных алгоритмов (подпрограмм). Такие подпрограммы называются функциями.

Функция — это вспомогательный алгоритм, который возвращает результат (число, строку символов и др.).

Построим функцию, которая возвращает среднее арифметическое двух целых чисел.

Какой тип данных нужно использовать для хранения среднего арифметического двух целых чисел?

Функция принимает два параметра — исходные целые числа и возвращает результат — вещественное число:

В заголовке функции указывают тип результата — перед именем функции в алгоритмическом языке записано ключевое слово вещ. В языке Паскаль заголовок функции начинается словом function, а после скобок, в которых перечисляются параметры, через двоеточие записывают тип результата — real (вещественное число).

Используя дополнительные источники, выясните, что означает английское слово average, от которого образовано название функции Avg.

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

знач:=(а+b)/2             Avg:=(a+b)/2;


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

Результат функции можно сразу вывести на экран:

вывод Avg(4,8)             writeln(Avg(4,8));


Что будет выведено на экран в результате работы этого фрагмента программы?

sr:=Avg(3,5)                       sr:=Avg(3,5);

вывод sr+Avg(7,ll)             write(sr+Avg(7,11));


Функции можно передавать не только аргументы-константы, но также имена переменных и арифметические выражения:

Наша функция Avg возвращает вещественное число, поэтому вызовы этой функции можно применять везде, где разрешено использовать вещественное число, в том числе в арифметических выражениях, условных операторах и циклах. Например:

Найдите значения переменных а, b и х, при которых в результате работы этого фрагмента программы будет выведено сообщение «Да!»:

Найдите начальные значения переменных а, b и х, при которых этот цикл выполнится ровно четыре раза:



Следующая страница Функции в других языках программирования



Cкачать материалы урока








Наверх