Тест Python. Цикл while
Python для створення сайтів
Python для створення сайтів використовується в деяких компанія. Цикл while (“поки”) дозволяє виконати одну і ту ж послідовність дій, поки перевіряється умова істинно. Умова записується до тіла циклу і перевіряється до виконання тіла циклу. Як правило, цикл while використовується, коли неможливо визначити точне значення кількості проходів виконання циклу.
Синтаксис циклу while в найпростішому випадку виглядає так:
При виконанні циклу while спочатку перевіряється умова. Якщо вона помилкова, то виконання циклу припиняється і керування передається на наступну інструкцію після тіла циклу while. Якщо умова істинно, то виконується інструкція, після чого умова перевіряється знову і знову виконується інструкція. Так триває до тих пір, поки умова буде істинно. Як тільки умова стане помилковою, робота циклу завершиться та управління передасться наступнії інструкції після циклу.
Наприклад, наступний фрагмент програми надрукує на екран квадрати всіх цілих чисел від 1 до 10. Видно, що цикл while може замінювати цикл for ... in range(...)
:
У цьому прикладі змінна i всередині циклу змінюється від 1 до 10. Така змінна, значення якої змінюється з кожним новим проходом циклу, називається лічильником. Зауважимо, що після виконання цього фрагмента значення змінної i дорівнюватиме 11, оскільки саме при i == 11 умова i <= 10 вперше перестане виконуватися.
Ось ще один приклад використання циклу while для визначення кількості цифр натурального числа n:
У цьому циклі ми відкидаємо по одній цифрі числа, починаючи з кінця, що еквівалентно цілочисельному поділу на 10 (n // = 10), при цьому вважаємо в змінної length, скільки разів це було зроблено.
У мові Пітон є й інший спосіб вирішення цього завдання: length = len (str (i)).
2. Інструкції управління циклом
Після тіла циклу можна написати слово else: і після нього блок операцій, який буде виконаний один раз після закінчення циклу, коли умова, що перевіряється стане невірно:
Можна було б подумати, що в цьому немає сенсу, бо цю ж інструкцію можна просто написати після закінчення циклу. Сенс з’являється тільки разом з інструкцією break. Якщо під час виконання Пітон зустрічає інструкцію break всередині циклу, то він відразу ж припиняє виконання цього циклу і виходить з нього. При цьому гілка else виконуватися не буде. Зрозуміло, інструкцію break осмислено викликати тільки всередині інструкції if, тобто вона повинна виконуватися тільки при виконанні якоїсь особливої умови.
Наведемо приклад програми, яка зчитує числа до тих пір, поки не зустріне негативне число. При появі негативного числа програма завершується. У першому варіанті послідовність чисел завершується числом 0 (при зчитуванні якого треба зупинитися).
У другому варіанті програми спочатку на вхід подається кількість елементів послідовності, а потім і самі елементи. В такому випадку зручно скористатися циклом for. Цикл for також може мати гілку else і містити інструкції break всередині себе.
Інша інструкція управління циклом – continue (продовження циклу). Якщо ця інструкція зустрічається десь посередині циклу, то пропускаються всі інструкції, що залишились до кінця циклу, і виконання циклу продовжується з наступної ітерації.
Якщо інструкції break і continue містяться всередині декількох вкладених циклів, то вони впливають лише на виконання самого внутрішнього циклу. От не супер інтелектуальний приклад, який це демонструє:
Захоплення інструкціями break і continue не заохочується, якщо можна обійтися без їх використання. Ось типовий приклад поганого використання інструкції break (даний код рахує кількість знаків у числі).
Набагато краще переписати цей цикл так:
Втім, на Python можна запропонувати й більш витончене рішення:
Запрошуємо підвищити свої навички програмування у нас в школі онлайн або в офісі на м. Академмістечко, м. Житомирська.