Помощь в написании студенческих работ
Антистрессовый сервис

Функции. 
Технология разработки программного обеспечения

РефератПомощь в написанииУзнать стоимостьмоей работы

Перейдем непосредственно к созданию функции (рис. 4.9). Ключевое слово def означает, что далее следует определение функции. После def указывается имя функции convert_co_cels, затем в скобках указывается параметр (или параметры), которому будет присваиваться значение при вызове функции. Параметры функции — обычные переменные, которыми функция пользуется для внутренних вычислений. Переменные… Читать ещё >

Функции. Технология разработки программного обеспечения (реферат, курсовая, диплом, контрольная)

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

Рассмотрим встроенную функцию с именем abs, принимающую на вход один аргумент — объект числового типа, и возвращающую абсолютное значение для этого объекта (рис. 4.6).

Функция как «черный ящик».

Рис. 4.6. Функция как «черный ящик».

Пример вызова функции abs с аргументом -9 имеет вид:

«> abs (-9).

«> d = 1 «> n = 3 >» abs (d — n).

«> abs (-9) + abs (5.6).

14.6.

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

Рассмотрим примеры нескольких встроенных математических функций.

Функция pow (x, у) возвращает значение х в степени у. Эквивалентно записи х**у, с которой мы уже встречались.

>>> pow (4, 5).

Функция pow может принимать третий аргумент, тогда вызов функции с аргументами pow (x, у, z) эквивалентен вычислению выражения (х ** у) % т.

>" pow (4, 5, 3).

Функция round (number) возвращает число с плавающей точкой, округленное до 0 цифр после запятой (по умолчанию). Функция может быть вызвана с двумя аргументами: round (number [, ndigits]), где ndigits — число знаков после запятой:

>" round (4.56 666).

>>> round (4.56 666, 3).

4.567.

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

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

Порядок вычисления составного выражения.

Рис. 4.7. Порядок вычисления составного выражения.

На практике часто при написании программ требуется преобразовывать типы объектов.

Функция int принимает любое значение и преобразует его в целое число, если это возможно (возвращает 0, если аргументы не переданы):

>>> int ().

Функция int может преобразовать число с плавающей точкой в целое, но это не округление, а отсечение дробной части:

>>> int (5.6).

Функция float возвращает число с плавающей точкой, построенное из числа или строки[1] (возвращает 0.0, если аргументы не переданы):

>" float (5).

5.0.

>>> float{).

0.0.

Описание функций содержится в документации, которая может быть вызвана с помощью функции help (на вход подается имя функции):

>" help (abs).

Help on built-in function abs in module builtins:

abs (x, /).

Return the absolute value of the argument.

Вернемся к формуле перевода градусов по шкале Фаренгейта (TF) в градусы по шкале Цельсия с):

ТС = 5/9 * (TF — 32).

Произведем несколько вычислений, где переменная deg_f будет содержать значение в градусах, но Фаренгейту:

>>> deg_f = 80.

«> deg_f.

>>> 5/9 * (deg_f — 32).

26.666.

«> deg_f = 70.

«> 5/9 * (deg_f — 32).

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

В первую очередь необходимо придумать имя функции (рис. 4.8), к примеру, назовем функцию convert_co_cels. Постарайтесь, чтобы имя было осмысленным (1епа123 — плохой пример) и отражало смысл функции, вспомните о правилах наименования переменных. Помимо этого, нежелательно, чтобы имя вашей функции совпадало с именами встроенных функций Python (встроенные функции в IDLE подсвечиваются фиолетовым цветом).

Создание собственной функции.

Рис. 4.8. Создание собственной функции.

Представим, что функция с именем convert_co_cels создана, тогда ее вызов для значения (аргумента) 80 будет иметь вид: con vert_co_cels (80).

Перейдем непосредственно к созданию функции (рис. 4.9). Ключевое слово def означает, что далее следует определение функции. После def указывается имя функции convert_co_cels, затем в скобках указывается параметр (или параметры), которому будет присваиваться значение при вызове функции. Параметры функции — обычные переменные, которыми функция пользуется для внутренних вычислений. Переменные, объявленные внутри функции, называются локальными и не видны вне функции. После символа «:» начинается тело функции — блок команд, относящийся к функции. Тело функции может содержать любое количество инструкций. В интерактивном режиме Python самостоятельно расставит отступы[2] от края редактора, тем самым обозначив, где начинается тело функции. Выражение, стоящее после инструкции return, будет возвращаться в качестве результата вызова функции.

Схема создания функции в Python.

Рис. 4.9. Схема создания функции в Python.

В интерактивном режиме создание функции имеет следующий вид (для завершения ввода функции необходимо два раза нажать клавишу f дождавшись приглашения для ввода команд «>):

>" def convert_co_cels (fahren): return (fahren-32) * 5/9.

>" convert_co_cels (451).

  • 232.77 777 777 777 777 >>> convert_co_cels (300)
  • 148.88 888 888 888 889

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

  • [1] О строках речь пойдет ниже.
  • [2] Отступы играют важную роль в Python, отделяя блок команд тела функции, цикла и пр.
Показать весь текст
Заполнить форму текущей работой