# Принципы структурного программирования Становление и развитие структурного программирования связано с именем Эдсгера Дейкстры. * Принцип 1. Следует отказаться от использования оператора безусловного перехода goto. * Принцип 2. Любая программа строится из трёх базовых управляющих конструкций: последовательность, ветвление, цикл. * Принцип 3. В программе базовые управляющие конструкции могут быть вложены друг в друга произвольным образом. Никаких других средств управления последовательностью выполнения операций не предусматривается. * Принцип 4. Повторяющиеся фрагменты программы можно оформить в виде подпрограмм (процедур и функций). Таким же образом (в виде подпрограмм) можно оформить логически целостные фрагменты программы, даже если они не повторяются. * Принцип 5. Каждую логически законченную группу инструкций следует оформить как блок. Блоки являются основой структурного программирования. * Принцип 6. Все перечисленные конструкции должны иметь один вход и один выход. * Принцип 7. Разработка программы ведётся пошагово, методом «сверху вниз» (top-down method). Следствия и дополнения вышеизложенных принципов: 1. Запрет на использование глобальных переменных 2. Не более одного выхода из функции. Исключение составляет предварительная проверка аргументов функции. 3. Не более одного выхода из цикла - это может быть как условие, так и ключевое слово break 4. Вложенность любых блоков не должна превышать 4 5. Размер функций ограничен по строкам и составляет 40-50 строк ![goto](../misc/eng/images/GOTO.png)