Тема: Цикли з параметром (for)
Цикл з параметром у Python може перебирати значення різних типів: числа, букви, рядки, елементи списку тощо. Функція range() створює послідовність чисел у вигляді шкали. Ця функція приймає два параметри:
Можна задавати лише один або два параметри цієї функції, тоді решта параметрів прийматимуть значення за умовчанням. Для початкового числа це значення 0, а крок рівний 1. Для кінцевого числа значення за умовчанням не існує, тому це обов'язковий параметр функції range().
Шкала чисел від 0 до n-1
Шкала чисел від k до n-1
Цикл з параметром використовується, коли потрібно забезпечити повторення блоку команд вказану кількість разів. Параметр при цьому має набувати значень, що входять у певну шкалу (чисел, букв чи інших елементів).
for змінна in шкала:
команди
Змінна - це параметр, лічильник, котрий змінює своє значення щоразу при виконанні команд циклу.
Одне виконання команд циклу називається ітерацією.
Тіло циклу складається з команд, котрі виконуються кілька разів.
Важливо дотримуватись правил синтаксичного оформлення циклів у Python, тобто рядок з командою for завершується двокрапкою, а команди тіла циклу записуються з відступом.
Виконання циклу проходить кілька етапів:
1) Визначається перелік елементів шкали
2) Виконуються команди тіла циклу
3) Відбувається перевірка: якщо у шкалі є невикористані елементи, то виконується пункт 2, інакше виконання передається наступній команді за межами циклу.
Тіло циклу
Тіло циклу може складатись з різних команд, зазвичай з арифметичних операцій та команд виведення print.
Задача 1. Надрукувати числа від 1 до 10
for chyslo in range(1,11):
print(chyslo)
Результатом виконання цієї програми буде стовпчик чисел:
1
2
3
4
5
6
7
8
9
10
Функція range(1,11) створила послідовність чисел [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]. Функція print() друкує вказаний аргумент (число з послідовності) та переходить до наступного рядка. Таким чином, змінна chyslo приймає послідовні значення зі шкали, а кожне із цих значень друкується з переходом у новий рядок. Щоб надрукувало в один рядок, добавляємо end=’ ‘ (print(chyslo, end=' '))
Задача 2. Надрукувати числа від 1 до 20 в один рядок.
Досить часто в межах циклу потрібно виконувати підрахунок, накопичуючи суми чи інші числові значення. Для цього потрібно визначити змінну, в котрій будуть зберігатись результати таких розрахунків перед циклом і надати їй певного початкового значення. Якщо це не зробити, то виникне помилка типу NameError: name is not defined.
Змінення значення змінної передбачає виконання математичних операцій та збереження нового значення у цій же змінній. Python передбачає два різновиди запису подібних операцій.
var = var + 1 |
var += 1 |
total = total + number |
total += number |
result = result * 5 |
result *= 5 |
change = change / 25 |
change /= 25 |
remainder = remainder % 2 |
remainder %= 2 |
power = power ** 3 |
power ** = 3 |
Операції в обох стовпцях є однаковими і можна використовувати будь-який запис. Перевагою скороченого запису є компактність.
Задача 3. Знайти суму чисел від 1 до 20
s=0
for i in range(1,21):
s=s+i
print(s)
Показати код/Сховати код^
Задача 4. З клавіатури вводиться число. Знайти суму чисел від 1 до цього числа
n=int(input("Введіть число="))
s=0
for i in range(1,n+1):
s=s+i
print(s)
Показати код/Сховати код^
Задача 5. З клавіатури вводиться два числа. Знайти суму чисел, які розміщені між ними
k=int(input("Введіть перше число="))
n=int(input("Введіть друге число="))
s=0
for i in range(k,n+1):
s=s+i
print(s)
Показати код/Сховати код^
Задача 6. З клавіатури вводиться два числа. Знайти суму парних чисел, які розміщені між ними
k=int(input("Введіть перше число="))
n=int(input("Введіть друге число="))
s=0
for i in range(k,n+1):
if (i%2==0):
s=s+i # подвійний відступ- команд циклу та умови
print(s)
1