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



Уроки 42 - 44
Процедуры и функции
§59. Процедуры. §60. Функции




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

§59. Процедуры
§60. Функции

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

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

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

Задачи


§60. Функции


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


С функциями вы уже знакомы, потому что наверняка применяли стандартные функции языка программирования (например, abs, sin, cos). Функция, как и процедура, — это вспомогательный алгоритм, который может принимать параметры (аргументы). Но, в отличие от процедуры, функция всегда возвращает значение-результат. Результатом может быть число, символ, символьная строка или данные другого типа.

Составим функцию, которая вычисляет сумму цифр числа. Будем использовать следующий алгоритм (предполагается, что число записано в переменной n):

Чтобы получить последнюю цифру числа (которая добавляется к сумме), нужно взять остаток от деления числа на 10. Затем последняя цифра отсекается, и мы переходим к следующей цифре. Цикл продолжается до тех пор, пока значение n не станет равно нулю.

Как указать в программе, чему равно значение функции? Для этого часто используют такой приём: значение функции записывается в специальную переменную. В школьном алгоритмическом языке имя этой переменной — знач, а в Паскале оно совпадает с именем функции (во многих версиях Паскаля можно использовать вместо этого встроенную переменную Result):

Обратим внимание на особенности записи: тип возвращаемого значения указывается в заголовке функции (в школьном алгоритмическом языке — перед именем функции, в Паскале — в конце заголовка через двоеточие). Так же как и в процедурах, в функциях можно объявлять и использовать локальные переменные. Они входят в «зону видимости» только этой функции, для всех остальных функций и процедур они недоступны.

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



Следующая страница Логические функции



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







Наверх