19 травня о 18:00Вебінар: Організація підсумкового повторення з предметів гуманітарного циклу наприкінці навчального року

Презентація "Процедури та функції в мове Python"

Про матеріал
Процедури та функції в програмуванні можна представити як ізольований блок коду, звернення до якого в процесі виконання програми може бути багаторазовим. Навіщо потрібні такі блоки інструкцій? У першу чергу, щоб скоротити обсяг вихідного коду: раціонально винести часто повторювані вирази в окремий блок і, потім, у міру потреби, звертатися до нього. Функція - це міні-програма у межах основної програми. Функція - це, мабуть, найбільш важливий будівельний блок будь-якій нетривіальній програми (на будь-якій мові програмування), тому в цьому матеріалі ми розглянемо різні аспекти функцій.
Перегляд файлу
Процедури та функціїв мові Python. Вчитель інформатики В. Д. Партіка. Навчання заради успіху. Мова програмування. PYTHON
Процедура - це підпрограма, яка виконує деякі дії після виклику її з основної програми або іншої процедури. Процедура. Глобальні змінні - це змінні, визначені в основній програмі. Вони доступні всередині процедури тільки для читання, а для зміни потрібно оголосити їх в процедурі після службового слова global. Локальні змінні - це змінні, визначені в процедурі, вони доступні тільки всередині процедури. Опис процедуриdef <ім'я> (<параметри>): <Оператори>Виклик процедури<Ім'я> (<аргументи>)
Робота процедури # основна програма summa(2, 3) # виклик процедури print(c) # друкується число 5. . . # приклад процедури def summa(a, b): # a, b - вхідні параметри global c # глобальна змінна c = a+b # сума в глобальній змінній
Створення функціїІснують деякі правила для створення функцій в Python.• Блок функції починається з ключового слова def, після якого йдуть назву функції і круглі дужки (()).• Будь-які аргументи, які приймає функція повинні знаходитися всередині цих дужок.• Після дужок йде двокрапка (:) і з нового рядка з відступом починається тіло функції.
ФункціїФункція - це допоміжний алгоритм, який завжди повертає в основний алгоритм значення-результат. Опис функціїdef <ім'я> (<параметри>): <Оператори> return <результат>Виклик функції<Ім'я> (<аргументи>)
Работа функції # основна програма s = summa(2, 3) # виклик функціїprint(s) # друкується число 5. . . # приклад функціїdef summa(a, b): # a, b - параметри функції c = a+b # обчислення функції return c # повертається результат
def my_max(a, b): if a > b: print(a) elif a < b: print(b) else: print(>> %Run 22.py46-2517egal>>> Приклад 1. Обчислити max з двох чисел." title="def my_max(a, b): if a > b: print(a) elif a < b: print(b) else: print("egal") my_max(13,46)my_max(-25, -74)my_max(17, -12)my_max(36,36)>>> %Run 22.py46-2517egal>>> Приклад 1. Обчислити max з двох чисел.">
Приклад 2. Обчислити суму цифр числа.def sum. D(n): # визначення функції з параметром    sum. D = 0    while n!= 0:        sum. D += n % 10        n = n // 10    return sum. D # повернення значення функції# основна програмаprint (sum. D(int(input()))) # виклик функції з параметром{5 C22544 A-7 EE6-4342-B048-85 BDC9 FD1 C3 A}№Вхідні дані: Вихідні дані:11234515234653425638
Припустимо, необхідно обчислити число комбінацій з n елементів по k, що дорівнює С𝒏𝒌=𝒏!𝒌!𝒏−𝒌! , Для чого необхідно обчислення факторіалів трьох величин: n, k і n-k. Для цього можна зробити три цикли, що призводить до збільшення розміру програми за рахунок триразового повторення схожого коду. Замість цього краще зробити одну функцію, яка обчислює факторіал будь-якого даного числа n і тричі скористатися цією функцією в своїй програмі. Відповідна функція може виглядати так: Приклад 3. Факторіал. def factorial(n):    result = 1    for i in range(2, n + 1):        result *= i    return result
Цей код повинен йти до того місця, де ми захочемо скористатися функцією factorial. Тепер ми можемо використовувати нашу функцію кілька разів. У цьому прикладі ми тричі викликаємо функцію factorial для обчислення трьох факторіалів: factorial (n), factorial (k), factorial (n-k).n = int(input())k = int(input())C = (factorial(n) // (factorial(k) * factorial(n - k)))print(C)Приклад 3. Факторіал.
Ми також можемо, наприклад, оголосити функцію binomial, яка приймає два цілочисельних параметра n і k і обчислює число поєднань з n по k:def binomial(n, k):    return factorial(n) // (factorial(k)*factorial(n - k))Тоді в нашій основній програмі ми можемо викликати функцію binomial для знаходження числа комбінацій:print(binomial(n, k))Приклад 2. Факторіал.
def factorial(n): result = 1 for i in range(2, n + 1): result *= i return resultn = int(input())k = int(input())def binomial(n, k): return factorial(n)//(factorial(k)*factorial(n - k))print(binomial(n, k))Приклад 3. Факторіал.
Приклад 4. Знайти більше з п'яти заданих чисел, використовуючи допоміжний алгоритм знаходження більшого з двох чисел. Блок-схема алгоритму розв'язання задачіBID (x, y, z)x>yz = xz = yвихід a b z c z d z e zпочатоккінець. BID (a, b, z)BID (z, c, z)введеня a,b,c,d,eвивід z. BID (z, d, z)BID (z, e, z)
Знайти більше з п'яти заданих чисел, використовуючи допоміжний алгоритм знаходження більшого з двох чисел. Приклад_4def bid(x, y): # Процедура більше з двох global z # глобальна змінна if x>y: z=x else: z=y# Основная программаprint(
Знайти більше з п'яти заданих чисел, використовуючи допоміжний алгоритм знаходження більшого з двох чисел. Приклад_5def bid(x, y): # функція більше з двох if x>y: z=x else: z=y return z# Основная программаprint(
Знайти найбільший спільний дільник чисел 16, 32, 40, 64, 80 і 128, використовуючи в якості процедури алгоритм Евкліда. Приклад_6def nod(a, b): global x while a != b: if a > b: a = a - b else: b = b - a x = a# Основная программаm = [16, 32, 40, 64, 80, 128]print(m)x = m[0]for i in range(1, 6): y = m[i] nod(x, y)print(“nod=“, x)[16, 32, 40, 64, 80, 128] nod = 8
def zam(x): x[0],x[-1] = x[-1], x[0]import random. A = []n = int(input(
Приклад 8. Знайти число Фібоначчі під номером n.def fibonacci(n): a = 0 b = 1 for i in range(n): a, b = b, a + b return(a)n = int(input(
Приклад 9. Вивести на екран n перших членів послідовності Фібоначчі. f (1) = 1, f (2) = 1, f (3) = f (1) + f (2), ..., f (i) = f (i-2) + f (i-1)# Функція обчислення n-го члена послідовності Фібоначчіdef f (n): if n == 1 or n == 2: # перші два числа рівні 1 rez = 1 else: # число дорівнює сумі двох попередніх rez = f (n-1) + f (n-2) # рекурсивний виклик функції return rez# Основна програмаn = int(input(“n=”))for i in range (1, n): # для чисел від 1 до n print (f (i), end = “ >> " title="Приклад 9. Вивести на екран n перших членів послідовності Фібоначчі. f (1) = 1, f (2) = 1, f (3) = f (1) + f (2), ..., f (i) = f (i-2) + f (i-1)# Функція обчислення n-го члена послідовності Фібоначчіdef f (n): if n == 1 or n == 2: # перші два числа рівні 1 rez = 1 else: # число дорівнює сумі двох попередніх rez = f (n-1) + f (n-2) # рекурсивний виклик функції return rez# Основна програмаn = int(input(“n=”))for i in range (1, n): # для чисел від 1 до n print (f (i), end = “ ") # вивід чергового значення функціїn=101 1 2 3 5 8 13 21 34 >>> ">
Приклад 10. Підрахувати кількість слів у тексті, використовуючи допоміжний алгоритм знаходження кількості пробілів у рядку.# Функція кількість прогалинdef count_space (x): # x - рядок k = 0 # поч. знач. лічильника for c in x: # перебір символів if c == >> " title="Приклад 10. Підрахувати кількість слів у тексті, використовуючи допоміжний алгоритм знаходження кількості пробілів у рядку.# Функція кількість прогалинdef count_space (x): # x - рядок k = 0 # поч. знач. лічильника for c in x: # перебір символів if c == " ": # якщо пробіл k = k + 1 # збільшуємо лічильник return k # результат функції# Основна програмаa = input ("Введіть текст:")print ("Кількість слів у тексті", count_space (a) +1)Введіть текст: Я люблю мову програмування Python. Кількість слів у тексті 5>>> ">
mahalaschool.com.ua. Python - це маленький початок великих справ. Дякуємо!
Зміст слайдів
Номер слайду 1

Процедури та функціїв мові Python. Вчитель інформатики В. Д. Партіка. Навчання заради успіху. Мова програмування. PYTHON

Номер слайду 2

Процедура - це підпрограма, яка виконує деякі дії після виклику її з основної програми або іншої процедури. Процедура. Глобальні змінні - це змінні, визначені в основній програмі. Вони доступні всередині процедури тільки для читання, а для зміни потрібно оголосити їх в процедурі після службового слова global. Локальні змінні - це змінні, визначені в процедурі, вони доступні тільки всередині процедури. Опис процедуриdef <ім'я> (<параметри>): <Оператори>Виклик процедури<Ім'я> (<аргументи>)

Номер слайду 3

Робота процедури # основна програма summa(2, 3) # виклик процедури print(c) # друкується число 5. . . # приклад процедури def summa(a, b): # a, b - вхідні параметри global c # глобальна змінна c = a+b # сума в глобальній змінній

Номер слайду 4

Створення функціїІснують деякі правила для створення функцій в Python.• Блок функції починається з ключового слова def, після якого йдуть назву функції і круглі дужки (()).• Будь-які аргументи, які приймає функція повинні знаходитися всередині цих дужок.• Після дужок йде двокрапка (:) і з нового рядка з відступом починається тіло функції.

Номер слайду 5

ФункціїФункція - це допоміжний алгоритм, який завжди повертає в основний алгоритм значення-результат. Опис функціїdef <ім'я> (<параметри>): <Оператори> return <результат>Виклик функції<Ім'я> (<аргументи>)

Номер слайду 6

Работа функції # основна програма s = summa(2, 3) # виклик функціїprint(s) # друкується число 5. . . # приклад функціїdef summa(a, b): # a, b - параметри функції c = a+b # обчислення функції return c # повертається результат

Номер слайду 7

def my_max(a, b): if a > b: print(a) elif a < b: print(b) else: print("egal") my_max(13,46)my_max(-25, -74)my_max(17, -12)my_max(36,36)>>> %Run 22.py46-2517egal>>> Приклад 1. Обчислити max з двох чисел.

Номер слайду 8

Приклад 2. Обчислити суму цифр числа.def sum. D(n): # визначення функції з параметром    sum. D = 0    while n!= 0:        sum. D += n % 10        n = n // 10    return sum. D # повернення значення функції# основна програмаprint (sum. D(int(input()))) # виклик функції з параметром{5 C22544 A-7 EE6-4342-B048-85 BDC9 FD1 C3 A}№Вхідні дані: Вихідні дані:11234515234653425638

Номер слайду 9

Припустимо, необхідно обчислити число комбінацій з n елементів по k, що дорівнює С𝒏𝒌=𝒏!𝒌!𝒏−𝒌! , Для чого необхідно обчислення факторіалів трьох величин: n, k і n-k. Для цього можна зробити три цикли, що призводить до збільшення розміру програми за рахунок триразового повторення схожого коду. Замість цього краще зробити одну функцію, яка обчислює факторіал будь-якого даного числа n і тричі скористатися цією функцією в своїй програмі. Відповідна функція може виглядати так: Приклад 3. Факторіал. def factorial(n):    result = 1    for i in range(2, n + 1):        result *= i    return result

Номер слайду 10

Цей код повинен йти до того місця, де ми захочемо скористатися функцією factorial. Тепер ми можемо використовувати нашу функцію кілька разів. У цьому прикладі ми тричі викликаємо функцію factorial для обчислення трьох факторіалів: factorial (n), factorial (k), factorial (n-k).n = int(input())k = int(input())C = (factorial(n) // (factorial(k) * factorial(n - k)))print(C)Приклад 3. Факторіал.

Номер слайду 11

Ми також можемо, наприклад, оголосити функцію binomial, яка приймає два цілочисельних параметра n і k і обчислює число поєднань з n по k:def binomial(n, k):    return factorial(n) // (factorial(k)*factorial(n - k))Тоді в нашій основній програмі ми можемо викликати функцію binomial для знаходження числа комбінацій:print(binomial(n, k))Приклад 2. Факторіал.

Номер слайду 12

def factorial(n): result = 1 for i in range(2, n + 1): result *= i return resultn = int(input())k = int(input())def binomial(n, k): return factorial(n)//(factorial(k)*factorial(n - k))print(binomial(n, k))Приклад 3. Факторіал.

Номер слайду 13

Приклад 4. Знайти більше з п'яти заданих чисел, використовуючи допоміжний алгоритм знаходження більшого з двох чисел. Блок-схема алгоритму розв'язання задачіBID (x, y, z)x>yz = xz = yвихід a b z c z d z e zпочатоккінець. BID (a, b, z)BID (z, c, z)введеня a,b,c,d,eвивід z. BID (z, d, z)BID (z, e, z)

Номер слайду 14

Знайти більше з п'яти заданих чисел, використовуючи допоміжний алгоритм знаходження більшого з двох чисел. Приклад_4def bid(x, y): # Процедура більше з двох global z # глобальна змінна if x>y: z=x else: z=y# Основная программаprint("Введіть 5 чисел через пробіл")a,b,c,d,e = input().split()a,b,c,d,e = int(a), int(b), int(c), int(d), int(e)bid(a, b)bid(z, c)bid(z, d)bid(z, e)print("Максимальне число: ", z)Введіть 5 чисел через пробіл2 3 5 4 1 Максимальне число: 5

Номер слайду 15

Знайти більше з п'яти заданих чисел, використовуючи допоміжний алгоритм знаходження більшого з двох чисел. Приклад_5def bid(x, y): # функція більше з двох if x>y: z=x else: z=y return z# Основная программаprint("Введіть 5 чисел через пробіл")a,b,c,d,e = input().split()a,b,c,d,e = int(a), int(b), int(c), int(d), int(e)m = bid(bid(bid(bid(a, b), c), d), e)print("Максимальне число: ", m)Введіть 5 чисел через пробіл2 3 5 4 1 Максимальне число: 5m = (BID (BID (BID (a, b), c), d), e)

Номер слайду 16

Знайти найбільший спільний дільник чисел 16, 32, 40, 64, 80 і 128, використовуючи в якості процедури алгоритм Евкліда. Приклад_6def nod(a, b): global x while a != b: if a > b: a = a - b else: b = b - a x = a# Основная программаm = [16, 32, 40, 64, 80, 128]print(m)x = m[0]for i in range(1, 6): y = m[i] nod(x, y)print(“nod=“, x)[16, 32, 40, 64, 80, 128] nod = 8

Номер слайду 17

def zam(x): x[0],x[-1] = x[-1], x[0]import random. A = []n = int(input("n="))for i in range(n): i = random.randint(-50, 50) A.append(i)print(A)zam(A)print(A)>>> %Run 22.pyn=6[40, 31, 29, 29, -37, 2][2, 31, 29, 29, -37, 40]>>> %Run 22.pyn=6[-30, 30, -15, 32, -26, 29][29, 30, -15, 32, -26, -30]>>> Приклад 7. Ввести одновимірний масив A довжиною m. Поміняти в ньому місцями перший і останній елементи. Довжину масиву ввести з клавіатури. Елементи масиву-цілі числа, згенерувати в діапазоні [-50, 50]. У програмі описати процедуру для заміни елементів масиву. Вивести вхідні та отримані масиви.

Номер слайду 18

Приклад 8. Знайти число Фібоначчі під номером n.def fibonacci(n): a = 0 b = 1 for i in range(n): a, b = b, a + b return(a)n = int(input("n="))print(fibonacci(n))>>> %Run 22.pyn=1055>>> %Run 22.pyn=206765>>>

Номер слайду 19

Приклад 9. Вивести на екран n перших членів послідовності Фібоначчі. f (1) = 1, f (2) = 1, f (3) = f (1) + f (2), ..., f (i) = f (i-2) + f (i-1)# Функція обчислення n-го члена послідовності Фібоначчіdef f (n): if n == 1 or n == 2: # перші два числа рівні 1 rez = 1 else: # число дорівнює сумі двох попередніх rez = f (n-1) + f (n-2) # рекурсивний виклик функції return rez# Основна програмаn = int(input(“n=”))for i in range (1, n): # для чисел від 1 до n print (f (i), end = “ ") # вивід чергового значення функціїn=101 1 2 3 5 8 13 21 34 >>>

Номер слайду 20

Приклад 10. Підрахувати кількість слів у тексті, використовуючи допоміжний алгоритм знаходження кількості пробілів у рядку.# Функція кількість прогалинdef count_space (x): # x - рядок k = 0 # поч. знач. лічильника for c in x: # перебір символів if c == " ": # якщо пробіл k = k + 1 # збільшуємо лічильник return k # результат функції# Основна програмаa = input ("Введіть текст:")print ("Кількість слів у тексті", count_space (a) +1)Введіть текст: Я люблю мову програмування Python. Кількість слів у тексті 5>>>

Номер слайду 21

mahalaschool.com.ua. Python - це маленький початок великих справ. Дякуємо!

pptx
Додано
18 березня
Переглядів
142
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку