Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Matlab_04.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

4.2. Представление о структурном программировании

Первая электронно-вычислительная машина ENIAC начала работать в 1947 году. Если учесть, что и до ЭВМ существовали механические и электро-механические вычислительные устройства, то можно сделать вывод, что программирование – составление программ для вычислительных устройств – имеет довольно давнюю историю.

Однако довольно долго считалось, что составление программ, подобно сочинению стихов, занятие доступное немногим избранным. По мере накопления и обобщения опыта в составлении программ были выработаны сначала некоторые эмпирические правила, а затем развита теория программирования.

Важным шагом на этом пути превращения программирования из искусства в ремесло была концепция структурного программирования, предложенная в 60-х годах ХХ-го века. Согласно этой концепции любая программа может быть составлена с помощью всего трех программных структур:

  1. последовательное выполнение операций;

  2. ветвление (выбор из двух альтернатив на основании проверки условия

  3. цикл (многократное выполнение операции, пока выполняется некоторое условии)

О боснованием этой концепции послужила теорема сформулированная итальянскими математиками К. Бомом и Дж. Якопини в 1966 году:

Любую схему алгоритма можно представить в виде композиции вложенных блоков begin и end, условных операторов if, then, else, циклов с предусловием (while) и может быть дополнительных логических переменных (флагов)

На первый взгляд данная информация представляет лишь исторический интерес. Ведь операторы языка MATLAB’а, рассмотренные в предыдущей работе как раз и представляют эти структуры (Операторы switch и for, как легко проверить, несложно воспроизвести, используя три основные структуры). Таким образом, сам язык программирования навязывает программисту использование базовых структур.

Однако именно применение только трех базовых структур и является обоснованием рассмотренной выше методики пошаговой детализации (или, как нередко говорят, программирования сверху вниз).

Т е из вас, кто начинал изучение программирование с FORTRAN’а, помнят о таком операторе как GO TO. Этот оператор вызывает переход управления программой в любое место программы. На следующем рисунке показано, как, примерно, может выглядеть фрагмент программы использующей этот оператор.

Можете поверить человеку, который начинал свой путь в программировании именно с программ такой структуры, разобраться в логике таких программ невероятно сложно. Даже если сам их написал. Как следствие, отладка и тестирование таких программ так же очень трудоемки.

В наши дни большинство современных языков программирования просто не допускают средств, отличных от трех базовых структур. Программируя в MATLAB’е, мы не можем воспользоваться оператором GO TO, поскольку его в MATLAB’е попросту нет.

Однако понимание того, что любая, самая сложная программа может быть сложена из простых кирпичиков – базовых структур – позволяет с оптимизмом приступить к составлению достаточно сложных программ.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]