Тема 10
Управління роботою циклу. Оператори break та continue
Теоретична частина
Якщо під час виконання циклу потрібно
відокремити окремий випадок, наприклад, не опрацьовувати його або вийти з
циклу, то для цього використовуються оператори continue та break.
Перший оператор переходить на початок циклу (до наступної ітерації), не
опрацьовуючи дані, а другий виходить із циклу. Звичайно, для цих операторів
всередині тіла циклу повинна прописана умова, для яких вона виконується.
Наприклад, при
виведенні коренів рівняння (х^3+x^2-10x+8)/(x^2-6x+5)=0 в
діапазоні [0;10] необхідно
пропускати пошук і виведення кореня для тих випадків, коли знаменник дорівнює
нулю, тому слід використати оператор continue.
for x in range(11):
if x**2-6*x+5==0:
continue
if x**3+x**2-10*x+8==0:
print(x, end=’ ‘)
Програма виведе число
2, бо число 1 пропустить (знаменник дорівнює нулю), а корінь -4 не
входить в область пошуку.
Коли ж потрібно
зупинитися на відшукання лише одного кореня, то після його знаходження потрібно
вийти із циклу за допомогою оператора break.
for x in range(-10,11):
if x**2-6*x+5==0:
continue
if x**3+x**2-10*x+8==0:
print(x, end=’ ‘)
break
Програма виведе число
-4 і одразу вийде з циклу.
Розглянемо кілька
прикладів.
Практична частина
Завдання 10.1.
Знайти натуральні корені рівняння
(ax2+bx+c)/(dx+e)=0, що не перевищують
1000. У одному рядку через пропуск дані п'ять цілих чисел a, b, c, d, e.
Вивести корені рівняння у порядку зростання.
Вхід
Вихід
1 -5 4 1 -1 4
Завдання 10.2.
Знайти натуральні корені рівняння (ax2+bx+c)/(dx+e)=0, що не перевищують
1000. У одному рядку через пропуск дані п'ять цілих чисел a, b, c, d, e.
Вивести корені рівняння у порядку спадання.
Вхід
Вихід
1 -5 6 1 -4 3
2
Завдання 10.3.
Дано натуральне число n. Вивести найменший дільник цього числа,
більший за 1.
Вхід
Вихід
35 5
Завдання 10.4.
Дано натуральні числа а
і b, що не перевищують 1000. Вивести їх
найбільший спільний дільник.
Вхід
Вихід
35 21 7
Завдання 10.5.
Дано натуральні числа а
і b, що не перевищують 1000. Вивести їх
найменше спільне кратне.
Вхід
Вихід
35 21
105
Немає коментарів:
Дописати коментар