Презентація "Процедури та функції в мове 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 - це маленький початок великих справ. Дякуємо!

Середня оцінка розробки
Структурованість
5.0
Оригінальність викладу
5.0
Відповідність темі
5.0
Загальна:
5.0
Всього відгуків: 3
Оцінки та відгуки
  1. Кондрашова Ольга
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  2. Ts Nick
    Без зайвих прикрас, з чіткими поясненнями
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  3. Вакульчук Тетяна Василівна
    Все логічно, чітко та зрозуміло!
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
pptx
Додано
18 березня 2021
Переглядів
4243
Оцінка розробки
5.0 (3 відгука)
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

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