Порядок виконання коду в Python Оператори if else в Python У програмуванні оператор if використовується для виконання блоку коду лише за умови дотримання конкретної умови . В Python існує три форми оператора if...else: оператор if оператор if...else оператор if... elif ...else
Оператор if в Python Синтаксис оператора if в Python: if умова: # блок коду Оператор if оцінює умову: Якщо умова обчислюється як True , виконується код всередині оператора if . Якщо умова обчислюється як False , код всередині оператора if пропускається. Наприклад: number = 15 # Перевіряємо, чи більше 0 значення змінної number if number > 0: print('Number is positive.‘) print(‘Next') Результат: Number is positive. Next 2
Оператор if…else в Python Синтаксис оператора if...else: if умова: # блок коду 1, якщо умова = True else: # блок коду 2, якщо умова = False Оператор if...else оцінює вказану умову: Якщо умова обчислюється як True : - код всередині if виконується; - код всередині else пропускається. Якщо умова обчислюється як False : - код всередині if пропускається; - код всередині else виконується. Наприкдад : number = 15 if number > 0: print('Positive number') else: print('Negative number') print(‘Next') Результат : Positive number Next 3
Оператор if… elif …else в Python Оператор if...else використовується для виконання блоку коду серед двох альтернатив. Однак, якщо потрібно зробити вибір у випадках, коли альтернатив більше ніж дві, то використовується оператор if... elif ...else . Синтаксис оператора if... elif ...else наступний: if умова1: # блок коду 1 elif умова2: # блок коду 2 else: # блок коду 3 Алгоритм: Якщо умова1 обчислюється як True , то виконується блок коду 1 . Якщо умова1 обчислюється як False , то обчислюється умова2 . Якщо умова2 обчислюється як True , то виконується блок коду 2 . Якщо умова2 обчислюється як False , то виконується блок коду 3 . Наприклад: number = 0 if number > 0: print("Positive number") elif number == 0: print('Zero') else: print('Negative number') print(‘Next') Результат : Zero Next 4
Вкладені оператори if в Python Можна використовувати один оператор if всередині іншого оператора if. Це називається вкладеним оператором if. Синтаксис вкладеного оператора if: # Зовнішній оператор if if умова1: # блок коду # Внутрішній оператор if if умова2: # блок коду Примітки: За потреби можна додати оператори else та elif у внутрішній оператор if. Можна додати внутрішній оператор if до зовнішнього оператора else або elif ( якщо вони існують). Можна зробити декілька рівнів вкладеності операторів if. Наприклад: number = 10 # Зовнішній оператор if if (number >= 0): # Внутрішній оператор if if number == 0: print('Number is 0') # Внутрішній оператор else else: print('Number is positive') # Зовнішній оператор else else: print('Number is negative') Результат: Number is positive 5
6 Приклад рішення квадратного рівняння ax^2+bx+c=0 ex51_RKVUR
Приклад 2 ex52_M_DVS 7
Приклад 3 Написати програму, яка буде виводити повідомлення - в якому з трьох режимів зможе рухатися машина: - нормальному; - піде в занос; - перевернеться. Вхідні дані транспортного засобу: ширина колії В,м висота розташування центра ваги h, м швидкість V, м/с радіус повороту R, м коефіцієнт зчеплення φ=0,8 . Блок-схема 8
Приклад 3 ex53_zanos 9
Цикл for в Python Цикл for використовується для виконання блоку коду задану кількість разів . Він використовується з будь-якими послідовностями, такими як списки, кортежі, рядки та ін. Синтаксис циклу for: for val in послідовність: # блок коду для виконання Тут val отримує доступ до кожного елемента послідовність на кожній ітерації. Цикл продовжується доти, доки не буде досягнутий останній елемент у послідовності. Блок-схема виконання циклу for в Python: Наприклад: languages = [‘ С++ ', 'Python', ‘Delphi', ‘PHP'] # Отримуємо доступ до елементів списку, # використовуючи цикл for for language in languages: print(language) Результат: С++ Python Delphi PHP 10
11 Цикл for та range() Діапазон — це ряд значень між двома числовими інтервалами. У Python використовується вбудована функція range() для визначення діапазону значень. Наприклад: values = range(4) Тут 4 всередині range() визначає діапазон, що містить значення 0, 1, 2, 3 . У Python можна використовувати цикл для діапазонів значень. Наприклад: # Використовуємо функцію range() для визначення діапазону значень values = range(4) # Виконуємо ітерації з i = 0 до i = 3 for i in values: print( i,end ='; ') Результат: 0; 1; 2; 3;
Приклад програми, яка виводить коди символів ASCII та кирилиці в UTF-8: py_code_sumbol Цикл for та else Цикл for також може мати необов’язковий блок else , який виконується після завершення циклу. Наприклад: digits = [0, 1, 4] for i in digits: print( i,end ='; ') else: print("No items .") Результат: 0; 1; 4; No items. Тут цикл for виводить усі елементи списку digits. Після завершення циклу інтерпретатор виконує блок else і виводить No items. Примітка : Блок else не виконуватиметься, якщо цикл for зупинено оператором break . 12
Приклад 4: ex54_nugolnik Створимо програму обчислення характеристик (радіусів описаного R і вписаного r кола, площі F ) правильного n -кутника по заданій стороні c для 3<=n<=10 за формулами: 13
Цикл while в Python Цикл while використовується для виконання блоку коду доти, доки не буде досягнуто певної умови. Синтаксис циклу while: while умова: # блок коду для виконання Алгоритм дій: Спочатку цикл while обробляє умову. Блок-схема виконання циклу while : Якщо умова обчислюється як True , то виконується код всередині циклу while . Потім умова повторно обробляється. Цей процес триває доти, доки умова не стане False . Якщо умова обчислюється як False , цикл завершує своє виконання. 14
Наприклад: # У цій програмі ми виводимо числа від 1 до 5 # Ініціалізація змінних i = 1 n = 5 # Цикл while з i = 1 до 5 while i <= n: print( i,end ='; ') i = i + 1 Результат: 1 ; 2; 3; 4; 5; Ось як працює дана програма: 15
Приклад обчислення суми чисел : # У цій програмі ми обчислюємо суму чисел доти, # доки користувач не введе 0 s = 0 number = int (input('Enter a number: ')) # Додаємо числа, доки number не дорівнюватиме 0 while number != 0: s += number # s = s + number # Запитуємо користувацький ввід number = int (input('Enter number: ')) print(‘sum =', s) Результат: Enter number: 12 Enter number: 4 Enter number: -5 Enter number: 0 sum = 11 Нескінченний цикл while у Python Якщо умова циклу завжди істинна ( True ), цикл виконуватиметься нескінченну кількість разів (поки не заповниться пам’ять). Наприклад: age = 32 # Умова для перевірки завжди дорівнює True while age > 18: print(‘Age=‘,age) 16
Цикл while з частиною else в Python У Python цикл while може мати необов’язковий блок else , який виконуватиметься після того, як умова циклу стане False . counter = 0 while counter < 3: print('Inside loop') counter = counter + 1 else: print('Inside else') Результат: Inside loop Inside loop Inside loop Inside else Блок else не виконуватиметься, якщо цикл while зупинено оператором break. Наприклад: counter = 0 while counter < 3: # Цикл завершує своє виконання через оператор break. # Блок else не виконується if counter == 1: break print('Inside loop') counter = counter + 1 else: print('Inside else') Результат: Inside loop for проти while в Python Цикл for зазвичай використовується, коли відома кількість ітерацій. Цикл while зазвичай використовується, коли кількість ітерацій невідома . 17
Приклад 5 ex55_kut_while Складемо програму знаходження максимального куту підйому (в градус ах) транспортного засобу вагою G , ( н ) при заданих коефіцієнтах опору коченню f і зчеплення φ рушія з опорною поверхнею , які введе користувач ( див. таблицю прикладу 3 ). Для розрахунку скористаємося формулами обчислення сили опору коченню ( н ) та сили тяги (н) при повному приводі по зчепленню 18
Приклад (6) програми обчислення значень функції на інтервалі Постановка задачі: Розробити програму обчислення значень функції y=f(x) для послідовності n значень аргументу на інтервалі xϵ [ a , b ] . Алгоритм рішення. 19
Програма реалізує обчислення значень функції для послідовності n значень аргументу на інтервалі xϵ [ a , b ] : ex56_fun_table , де 20
Оператори break та continue в Python Оператор break використовується для негайного завершення циклу. Синтаксис оператора break наступний : break Робота оператора break в операторах for та while : Наприклад : 21 for i in range(5): if i == 3: break print( i ) Результат : 1 2 i = 1 while i <= 10: print('6 * ',(i), '=',6 * i) if i > = 5: break i = i + 1 Результат : 6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30
Оператор continue використовується для пропуску поточної ітерації циклу, та переходу до наступної ітерації. Синтаксис оператора continue: continue Робота оператора continue в операторах for та while : Наприклад : 22 for i in range(5): if i == 3: continue print( i ) Результат: 1 2 4 # Виводимо на екран непарні числа від 1 до 10 num = 0 while num < 10: num += 1 if (num % 2) == 0: continue print(num) Результат: 1 3 5 7 9
Оператор pass в Python Оператор pass — це порожній оператор, який можна використовувати як “заглушку” для майбутнього коду. Припустимо, ми маємо цикл або функцію, яка ще не визначена, але ми її визначимо в майбутньому. У таких випадках ми можемо використовувати оператор pass. Синтаксис оператора pass: pass Наприклад : n = 10 # Використовуємо pass всередині конструкції if if n > 10: pass print('Hello') Результат: Hello Тепер виконаємо той самий код, але замість pass напишемо коментар: n = 10 if n > 10: # Тут буде код, але трохи пізніше print('Hello') Ми отримаємо повідомлення про помилку: IndentationError : expected an indented block Примітка : Різниця між коментарем та оператором pass у Python полягає в тому, що хоча інтерпретатор повністю ігнорує коментар, оператор pass не ігнорується. Також ми можемо використати оператор pass у функції чи класі . Наприклад, у функції: def function( args ): pass У класі: class Example: pass 23
Приклад 7 Модифікувати програму завдання прикладу 3 таким чином: 1) для початкових значень швидкості V та радіусу повороту R транспортного засобу знайти найменше значення висоти розташування центра ваги h , при якому машина перевернеться або піде в занос; 2) для обраного значення h та початкового значення радіусу повороту R знайти найменше значення швидкості V , при якому машина перевернеться або піде в занос; 3) для обраних значень V та h знайти найбільше значення радіусу повороту R , при якому машина перевернеться або піде в занос. 24