|
||||||||
x = 2*sumDigits(n+5). z = sumDigits(k) + sumDigits(m). print ( Сумма цифр чётная ). print ( Она равна, sumDigits(n) ). mi = min ( a, b, c ). ma = max ( a, b, c ). return a + b + c - mi - ma. return d, m. Логические функцииx = 2*sumDigits(n+5)
z = sumDigits(k) + sumDigits(m) if sumDigits(n) % 2 == 0: print ( "Сумма цифр чётная" ) print ( "Она равна", sumDigits(n) )
Функцию можно вызывать не только из основной программы, но и из другой функции. На-пример, функция, которая находит среднее из трёх различных чисел (то есть число, заключённое между двумя остальными), может быть определена так: def middle ( a, b, c ):
mi = min ( a, b, c ) ma = max ( a, b, c ) return a + b + c - mi - ma
Она использует встроенные функции min и max. Идея решения состоит в том, что если из суммы трёх чисел вычесть минимальное и максимальное, то получится как раз третье число.
Функция может возвращать несколько значений. Например, функцию, которая вычисляет сразу и частное, и остаток от деления двух чисел11 можно написать так: def divmod ( x, y ):
d = x // y m = x % y return d, m
При вызове такой функции её результат можно записать в две различные переменные a, b = divmod ( 7, 3 )
Если указать только одну переменную, мы получим кортеж – набор элементов, который заклю-чается в круглые скобки:
Логические функции
Часто применяют функции, которые возвращают логическое значение (True или False). Иначе говоря, такая логическая функция отвечает на вопрос «да или нет?» и возвращает 1 бит ин-формации.
Вернёмся к задаче, которую мы уже рассматривали: вывести на экран все простые числа в диапазоне от 2 до 1000. Алгоритм определения простоты числа оформим в виде функции. При этом его можно легко вызвать из любой точки программы. Запишем основную программу на псевдокоде: for i in range(2,1001):
if i - простое :
|
||||||||
|