DAMOO

Информатика · ЕНТ 2026 · 03. Компьютерное мышление

Программирование алгоритмов на языке программирования Python

Начать тест

Чтобы пройти тест, нужно войти или зарегистрироваться.

Конспект

Учебниковая опора

  • Кадиркулов Р. А., Нурмуханбетова Г. К. «Информатика. Учебник для учащихся 6 класса общеобразовательной школы», 6 класс, Алматыкiтап баспасы, 2020, с. 82–85, 88
  • Кадиркулов Р. А., Рыскулбекова А. Д., Нурмуханбетова Г. К. «Информатика. 7 класс», 7 класс, Алматыкітап баспасы, 2023, с. 115–129
  • Мухамбетжанова С. Т., Тен А. С., Демидова Л. Г. «Информатика. 8 класс», 8 класс, Атамура, 2021, с. 100–123
  • Кадыркулов Р., Нурмуханбетова Г. «Информатика. 9 класс», 9 класс, Алматыкітап, 2019, с. 71–77, 109–113

Главное

  • Типы: int (целые), float (действительные), str (строки), bool (True/False); тип узнают через type().
  • int(3.98) = 3 (отбрасывает дробь), round(5.89) = 6, abs() — модуль; // — целочисленное деление, % — остаток.
  • Ветвление: if … : (краткая форма), if … else (полная); else относится к ближайшему if перед ним.
  • Логика в условиях: and, or, not.
  • while — когда число повторений неизвестно; for i in range(...) — цикл с параметром.
  • break — выход из цикла; continue — переход к следующей итерации; else цикла выполняется, только если не было break.
  • Индексы списка — с 0; A[-1] — последний элемент; срез A[X:Y:Z] не включает Y.

Теория

Типы и преобразования. int(input()) превращает введённую строку в число. Строки нельзя складывать арифметически — только «склеивать»: str(12) + str(58) = '1258'. float(748) = 748.0.

Операторы сравнения: ==, !=, >, <, >=, <=. После условия — двоеточие, тело — с отступом. Чётность: a % 2 == 0.

Вложенные условия — второй if внутри ветви первого (в else или в ветви истины). Не рекомендуется более 2–3 уровней вложенности.

Составные условия: and истинно, только если оба условия истинны; or — если хотя бы одно; not — отрицание. Пример: not (5 > 6) → True; 2 > 5 and 2 > 3 → False.

Цикл while. Параметр цикла меняется в теле; если его не менять — бесконечный цикл (прерывание — Ctrl + C). Если условие ложно сразу, тело не выполнится ни разу.

Цикл for и range

Запись Значения $i$
range(n) $0, 1, \ldots, n-1$
range(a, b) $a, \ldots, b-1$
range(a, b, d), $d > 0$ $a, a+d, a+2d, \ldots$ пока $i < b$
range(a, b, d), $d < 0$ убывание, пока $i > b$

При шаге 1 тело не выполнится, если $a \ge b$. Во вложенных циклах на одну итерацию внешнего внутренний делает все свои: при $n = 3$ тело выполнится $3 \cdot 3 = 9$ раз.

Массивы (списки). Массив — последовательность однотипных данных с общим именем, элементы различаются индексами. В списке Python элементы могут быть разных типов. A = [0] * N резервирует N элементов. Заполнение случайными числами: [randint(1, 100) for x in range(N)].

Двумерный массив A[n][m] содержит $n \cdot m$ элементов; обход — вложенными циклами (внешний — строки i, внутренний — столбцы j). Главная диагональ: i == j; выше неё i < j, ниже i > j; побочная диагональ при индексации с 0: i + j == N - 1 (в учебнике при нумерации с 1: $i + j = N + 1$).

Примеры

  1. Что выведет код?
a = 0
while a < 10:
    a += 1
    if a == 5:
        continue
    print(a, end=' ')

Ответ: 1 2 3 4 6 7 8 9 10 — число 5 пропущено.

  1. Что выведет for i in range(1, 21, 2)? Нечётные числа 1, 3, …, 19 (20 не входит).

  2. Срезы. A = [45, 25, 30, 20, -40]: A[0:5:2] → [45, 30, -40], A[:3] → [45, 25, 30], A[3:] → [20, -40], A[-5] → 45.

  3. Перевод секунд. $N = 16896$: N // 3600 = 4 ч, остаток 2496; 2496 // 60 = 41 мин; остаток 36 с.

N = 16896
h = N // 3600
m = N % 3600 // 60
s = N % 60
print(h, m, s)   # 4 41 36

# сумма главной диагонали матрицы
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
S = 0
for i in range(3):
    for j in range(3):
        if i == j:
            S += a[i][j]
print(S)         # 15

Типичные ошибки на ЕНТ

  • Считают, что range(1, 10) включает 10.
  • Путают break (выход из цикла) и continue (пропуск текущей итерации).
  • Ожидают выполнения else цикла после break — он не выполняется.
  • Нумеруют элементы списка с 1; A[1] — это второй элемент.
  • Путают / (результат float) и // (целая часть), int() (отбрасывает) и round() (округляет).
  • Забывают двоеточие после if, while, for или нарушают отступ.

Самопроверка

  1. Что вернёт int(7.9)? — 7.
  2. Сколько раз выполнится тело for i in range(5, 5)? — Ни разу.
  3. Какие значения даёт range(2, 7, 3)? — 2 и 5.
  4. Сколько элементов в массиве A[5][7]? — 35.
  5. Что выведет print(str(3) + str(4))? — 34.