Структурное программирование

Структурное программирование

Программу в тысячу строк невозможно писать «в лоб». Её собирают из понятных блоков — это структурное программирование. Разберёмся.

Чему ты научишься. делить большую программу на функции — понятные блоки, каждый из которых решает одну подзадачу.

ПРОГРАММА из блоков-функций (одна деталь = одна задача):

              ┌───────────────┐
              │   Программа    │
              └───────┬───────┘
          ┌───────────┼───────────┐
    ┌──────────┐ ┌──────────┐ ┌──────────┐
    │ 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, массивы и структурный подход. Дальше — информационное моделирование.

Назад  ·  ↑ В начало урока  ·  ⌂ В начало курса  ·  Вперёд →

Школа Виктора Комлева