
Программу в тысячу строк невозможно писать «в лоб». Её собирают из понятных блоков — это структурное программирование. Разберёмся.
Чему ты научишься. делить большую программу на функции — понятные блоки, каждый из которых решает одну подзадачу.
ПРОГРАММА из блоков-функций (одна деталь = одна задача):
┌───────────────┐
│ Программа │
└───────┬───────┘
┌───────────┼───────────┐
┌──────────┐ ┌──────────┐ ┌──────────┐
│ summa() │ │maximum() │ │ print │
│ a + b │ │ больший │ │ вывод │
└──────────┘ └──────────┘ └──────────┘
Три базовые структуры внутри функций:
следование → ветвление (если) → цикл (повтор)
Структурное программирование — подход, при котором программу строят только из трёх базовых структур (следование, ветвление, цикл) и делят на небольшие вспомогательные алгоритмы — функции. Каждая функция решает одну понятную подзадачу; из них, как из деталей, собирают всю программу.
def summa(a, b):
return a + b
def maximum(a, b):
if a > b:
return a
return b
print(summa(3, 4))
print(maximum(3, 4))
7
4
Плюсы: программу легче писать, читать, искать ошибки и переиспользовать части. Это стандарт современного программирования.
Контрольный вопрос. Подход, при котором программу строят из базовых структур и делят на функции, называется…
Подсказка: Из понятных блоков.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Из скольких базовых структур строят программу при структурном подходе?
Подсказка: Следование, ветвление и цикл — пересчитай их в схеме урока.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Слово, с которого в Python начинается объявление функции, — ______. Впиши слово на английском маленькими буквами.
Подсказка: Короткое слово из трёх латинских букв перед именем функции в примере кода урока.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Одно из преимуществ деления программы на функции — облегчается…
Подсказка: Об этом говорится в абзаце сразу после примера кода.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Дана функция def summa(a, b): return a + b. Что выведет print(summa(2, 2))? Впиши число.
Подсказка: Просто сложи два аргумента функции между собой.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Дана функция def summa(a, b): return a + b. Что выведет print(summa(10, 15))? Впиши число.
Подсказка: Сложи два аргумента функции: 10 и 15.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Небольшой вспомогательный алгоритм, решающий одну подзадачу, в Python оформляют как…
Подсказка: Через def.
Онлайн-проверка ответа появится позже
Задание. Дана функция: def summa(a, b): return a + b. Что выведет print(summa(6, 9))? Впиши число.
Подсказка: Сложи два аргумента функции: 6 и 9.
✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.
Онлайн-проверка ответа появится позже
Задание. Даны две функции: def summa(a, b): return a + b; def maximum(a, b): if a > b: return a; return b. Что выведет print(maximum(summa(2, 3), 4))? Впиши число.
Подсказка: Сначала вычисли summa(2, 3) — это и будет первым аргументом функции maximum.
✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.
Онлайн-проверка ответа появится позже
Задание. Раздели на функции программу, которая для трёх чисел находит их сумму И самое большое из них.
1) Опиши функцию summa(a, b, c) — что она делает и что возвращает.
2) Опиши функцию maximum(a, b, c) — что она делает и что возвращает.
3) Опиши, как из этих двух функций собрать финальную программу, которая выводит и сумму, и максимум для чисел 5, 12, 8 — укажи, что именно выведется.Подсказка: Каждая функция решает ОДНУ подзадачу; финальная программа просто вызывает обе функции с одними и теми же тремя числами.
Онлайн-проверка ответа появится позже
Итоги главы
Ты систематизировал алгоритмику: свойства и сложность алгоритмов, базовые структуры, запись на Python, массивы и структурный подход. Дальше — информационное моделирование.
