Информатика · 8 класс3 четвертьТема 5ГОСО РК 2026Базовый

Цикл for и функция range() в Python

Синтаксис цикла for, генератор чисел range(start, stop, step), вычисление суммы, произведения, факториала и счетчики условий.

Время изучения~60 минтеория + практика
Разделы темы4 разд.пошаговый разбор
Тест темы2 вопр.с мгновенным ответом
СОР / СОЧ3 четвертьдескрипторы ГОСО
Раздел 1 из 4

Цикл for (цикл со счетчиком / цикл обхода) в языке Python используется в тех случаях, когда количество повторений тела цикла известно заранее либо требуется поочередно перебрать все элементы некоторой последовательности (чисел, символов строки или элементов списка).

Синтаксис цикла for:

for переменнаясчетчик in последовательность:

телоцикла (4 пробела)

На каждом витке цикла переменная-счетчик автоматически принимает следующее значение из заданной последовательности, выполняет команды тела цикла и переходит к следующему элементу без необходимости ручного инкремента (i += 1).

Синтаксис

Цикл for

Конструкция пошаговой итерации по упорядоченной числовой или объектной последовательности.
Переменная

Итератор (i)

Переменная цикла, автоматически принимающая значения каждого элемента последовательности.
Раздел 2 из 4

Для генерации арифметических последовательностей целых чисел в цикле for служит встроенная функция range().

Три варианта использования функции range():

1. range(stop) — с одним параметром: генерирует числа от 0 до (stop - 1) с шагом 1:

for i in range(5): # Числа: 0, 1, 2, 3, 4 (ровно 5 повторений! Число 5 не включается);

2. range(start, stop) — с двумя параметрами: генерирует числа от start до (stop - 1) с шагом 1:

for i in range(1, 6): # Числа: 1, 2, 3, 4, 5;

3. range(start, stop, step) — с тремя параметрами: от start до (stop - 1) с шагом step:

for i in range(2, 11, 2): # Четные числа: 2, 4, 6, 8, 10.

Если шаг step отрицательный, последовательность идет на убывание:

for i in range(5, 0, -1): # Обратный отсчет: 5, 4, 3, 2, 1.

Функция

range(stop)

Генератор диапазона целых чисел с обязательным не включением правой границы (stop - 1).
Параметр

Шаг step

Шаг приращения между соседними элементами последовательности (может быть отрицательным).

Ловушка правой границы

Запомните: правая граница в range(start, stop) НИКОГДА не входит в диапазон! Чтобы цикл дошел до числа 10 включительно, нужно писать range(1, 11).

Два самых популярных шаблона применения цикла for:

1. Накопление суммы (сумматор):

summa = 0 # До цикла создаем «копилку», равную 0

for i in range(1, 101):

summa+=isumma += i

print("Сумма чисел от 1 до 100:", summa) # 5050

2. Накопление произведения (факториал n! = 1 · 2 · 3 · ... · n):

fact = 1 # ВНИМАНИЕ: копилка произведения инициализируется ЕДИНИЦЕЙ (не нулем!)

for i in range(1, n + 1):

fact∗=ifact *= i

print(f"{n}! = {fact}")

Паттерн

Копилка суммы (s = 0)

Переменная-накопитель суммы всегда обнуляется перед стартом цикла.
Паттерн

Факториал (f = 1)

Накопитель произведения инициализируется единицей, иначе при умножении на 0 результат будет нулевым.

Для подсчета количества элементов, удовлетворяющих определенному условию, внутри цикла for помещают условный оператор if со счетчиком count += 1:

count=0count = 0

for i in range(1, 51):

if i % 3 == 0: # Если число делится на 3

count+=1count += 1

print("Чисел, кратных 3:", count)

Шаг 1
Обнуление счетчика
Создать переменную count = 0 перед входом в цикл.
Шаг 2
Циклический перебор
Организовать цикл for i in range(a, b + 1).
Шаг 3
Фильтрация и инкремент
Внутри цикла проверить условие: if i % k == 0: count += 1.
Ваш прогресс по теме25%
Шпаргалка формул8 класс
Развернутая форма записи числа в позиционной СС:
Aq=∑k=−mn−1ak⋅qkA_q = \sum_{k=-m}^{n-1} a_k \cdot q^k[число]
Количество строк в таблице истинности:
M=2nM = 2^n[строк]
Законы де Моргана (инверсия конъюнкции и дизъюнкции):
A∧B‾=A‾∨B‾,A∨B‾=A‾∧B‾\overline{A \land B} = \overline{A} \lor \overline{B}, \quad \overline{A \lor B} = \overline{A} \land \overline{B}[булева алгебра]
Закон двойного отрицания и поглощения:
A‾‾=A,A∨(A∧B)=A,A∧(A∨B)=A\overline{\overline{A}} = A, \quad A \lor (A \land B) = A, \quad A \land (A \lor B) = A[булева алгебра]
Следующая тема

Списки (массивы) в Python: создание, индексация и методы

Перейти к теме →