Лекция: Цикл, или возврат, или циклическая инструкция.

В 1981 году Дональд Кнут разработал концепцию «грамотного программирования» как альтернативу «структурному программированию» при разработке системы компьютерной вёрстки. Несмотря на доказанную эффективность, данная концепция не получила распространения из-за непонимания.

Сутью структурного программирования является возможность разбиения программы на составляющие элементы.

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

§ точно обозначенные управляющие структуры,

§ программные блоки,

§ отсутствие инструкций безусловного перехода (GOTO),

§ автономные подпрограммы,

§ поддержка рекурсии и локальных переменных.

В соответствии с методологией структурного программирования:

1 Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:

последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы;

ветвление— однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;

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

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

2 Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде т. н. подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.

3 Разработка программы ведётся пошагово, методом «сверху вниз».

4 Документация должна создаваться одновременно с программированием в виде комментариев к программе.

Распространены две методики (стратегии) разработки программ, относящиеся к структурному программированию: программирование «сверху вниз» и программирование «снизу вверх».

Достоинства структурного программирования:

1 повышается надежность программ (благодаря хорошему структурированию при проектировании, программа легко поддается тестированию и не создает проблем при отладке);

2 повышается эффективность программ (структурирование программы позволяет легко находить и корректировать ошибки, а отдельные подпрограммы можно переделывать (модифицировать) независимо от других);

3 в структурированных программах логически связанные операторы находятся визуально ближе, а слабо связанные — дальше, что позволяет обходиться без блок-схем и других графических форм изображения алгоритмов (по сути, сама программа является собственной блок-схемой);

4 уменьшается время и стоимость программной разработки;

5 улучшается читабельность программ (значительно сокращается число вариантов построения программы по одной и той же спецификации, это снижает сложность программы и облегчает понимание её другими разработчиками).

Структурное программирование эффективно используется для решения различных математических задач, имеющих алгоритмический характер.

 

 

еще рефераты
Еще работы по информатике