Шаг 1: Введение
Теоретическая часть
Алгоритмические структуры — это базовые конструкции, из которых строится любой алгоритм:
Линейная
Действия выполняются последовательно, одно за другим.
Ветвление
Выбор одного из нескольких вариантов в зависимости от условия.
Цикл
Повторение группы действий, пока выполняется условие.
Проверка понимания
Вопрос 1: Какая структура используется, когда нужно выполнить действие в зависимости от возраста пользователя?
Вопрос 2: Как называется структура, в которой команды выполняются строго одна за другой?
Шаг 2: Линейные алгоритмы
Теория
Линейный алгоритм — это последовательность действий, которые выполняются ровно один раз в заданном порядке.
b = 3
c = a + b
print(c) # 8
Задачи
Задача 1: Дан линейный алгоритм: x = 7, y = 2, z = x * y + 10. Чему равно z?
Задача 2: Что выведет этот код? a = 10; b = 20; a = a + b; b = a - b; print(a, b)
Шаг 3: Ветвление
Теория
Условный оператор if позволяет выбрать одну из веток выполнения.
действие1
else:
действие2
Задачи
Задача 1: Что выведет код? x = 5; if x > 10: print('A') else: print('B')
Задача 2: Напишите условие, которое проверяет, является ли число n чётным. (Введите пропущенное выражение: if _____ : )
Шаг 4: Циклы
Теория
for — перебор последовательности; while — повторение, пока истинно условие.
while x > 0: x -= 1
Задачи
Задача 1: Сколько раз выполнится тело цикла? i = 5; while i > 0: i -= 1
Задача 2: Что выведет код? for i in range(2,5): print(i, end=' ')
Шаг 5: Вложенные структуры
Теория
Структуры могут быть вложены друг в друга: цикл внутри цикла, условие внутри цикла и т.д.
for j in range(2):
print(i,j)
Задачи
Задача 1: Сколько раз напечатается слово "Привет"? for i in range(2): for j in range(3): print('Привет')
Задача 2: При каком значении x будет выведено "OK"? if x > 0: if x < 10: print('OK')
Шаг 6: Примеры алгоритмов
Типовые алгоритмы
- Поиск максимума/минимума
- Сумма элементов списка
- Проверка простого числа
Задача: Дан список a = [3,7,2,9]. Чему равна сумма элементов?
Шаг 7: Практическая работа
Напишите условие (только выражение) для проверки, что число x находится в интервале (10, 20] (строго больше 10 и меньше или равно 20).
Сколько итераций выполнит цикл? for i in range(1,10,2): print(i)
Что выведет код? for i in range(1,4):
for j in range(1,3):
print(i+j, end=' ')
Вычислите значение переменной c после выполнения кода: a=5; b=3; c=a**b - b
Напишите на Python код, который находит сумму всех чётных чисел от 1 до 100.