Главная страница

функции. Программирование на языке Python Функции Что такое функция


Скачать 113.7 Kb.
НазваниеПрограммирование на языке Python Функции Что такое функция
Анкорфункции
Дата14.02.2022
Размер113.7 Kb.
Формат файлаpptx
Имя файлафункции.pptx
ТипЗадача
#361137

Программирование на языке Python

Функции

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


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

Задача. Написать функцию, которая вычисляет сумму цифр числа.

Алгоритм:

сумма = 0

пока n != 0:

сумма += n % 10

n = n // 10

Сумма цифр числа


# основная программа

print ( sumDigits(12345) )

def sumDigits( n ):

sum = 0

while n!= 0:

sum += n % 10

n = n // 10

return sum

return sum

передача результата

Использование функций


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

Что вычисляет?

?

Задачи


«A»: Напишите функцию, которая находит наибольший общий делитель двух натуральных чисел.

Пример:

Введите два натуральных числа:

7006652 112307574

НОД(7006652,112307574) = 1234.

«B»: Напишите функцию, которая определяет сумму цифр переданного ей числа.

Пример:

Введите натуральное число:

123

Сумма цифр числа 123 равна 6.

Задачи


«C»: Напишите функцию, которая «переворачивает» число, то есть возвращает число, в котором цифры стоят в обратном порядке.

Пример:

Введите натуральное число:

1234

После переворота: 4321.

Как вернуть несколько значений?


def divmod ( x, y ):

d = x // y

m = x % y

return d, m

d – частное,

m – остаток

a, b = divmod ( 7, 3 )

print ( a, b ) # 2 1

q = divmod ( 7, 3 )

print ( q ) # (2, 1)

(2, 1)

кортеж – набор элементов

Задачи


«A»: Напишите функцию, которая переставляет три переданные ей числа в порядке возрастания.

Пример:

Введите три натуральных числа:

10 15 5

5 10 15

«B»: Напишите функцию, которая сокращает дробь вида M/N.

Пример:

Введите числитель и знаменатель дроби:

25 15

После сокращения: 5/3

Задачи


«C»: Напишите функцию, которая вычисляет наибольший общий делитель и наименьшее общее кратное двух натуральных чисел.

Пример:

Введите два натуральных числа:

10 15

НОД(10,15)=5

НОК(10,15)=30

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


Задача. Найти все простые числа в диапазоне от 2 до 100.

for i in range(2,1001):

if  i - простое  :

print ( i )

i - простое

isPrime(i)

функция, возвращающая логическое значение (True/False)

Функция: простое число или нет?


Какой алгоритм?

?

def isPrime ( n ):

k = 2

while k*k <= n and n % k != 0:

k += 1

return (k*k > n)

return (k*k > n)

if k*k > n:

return True

else:

return False

Логические функции: использование


n = int ( input() )

while isPrime(n):

print ( n, "– простое число" )

n = int ( input() )

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

!

Задачи


«A»: Напишите логическую функцию, которая определяет, является ли переданное ей число совершенным, то есть, равно ли оно сумме своих делителей, меньших его самого.

Пример:

Введите натуральное число:

28

Число 28 совершенное.

Пример:

Введите натуральное число:

29

Число 29 не совершенное.

Задачи


«B»: Напишите логическую функцию, которая определяет, являются ли два переданные ей числа взаимно простыми, то есть, не имеющими общих делителей, кроме 1.

Пример:

Введите два натуральных числа:

28 15

Числа 28 и 15 взаимно простые.

Пример:

Введите два натуральных числа:

28 16

Числа 28 и 16 не взаимно простые.

Задачи


«С»: Простое число называется гиперпростым, если любое число, получающееся из него откидыванием нескольких цифр, тоже является простым. Например, число 733 – гиперпростое, так как и оно само, и числа 73 и 7 – простые. Напишите логическую функцию, которая определяет, верно ли, что переданное ей число – гиперпростое. Используйте уже готовую функцию isPrime, которая приведена в учебнике.

Пример:

Введите натуральное число:

733

Число 733 гиперпростое.

Пример:

Введите натуральное число:

19

Число 19 не гиперпростое.


написать администратору сайта