Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_практикум_17_печать.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
3 Мб
Скачать
☆

2 Методы и технологии разработки алгоритмов и программ

Основной целью программирования является построение надёжной легко читаемой и модифицируемой программы, решающей поставленную задачу. Для этого у программы должна быть наиболее простая структура. Хотя решаемые задачи имеют различную сложность, выбор варианта их решения в большинстве случаев должен определяться простотой понимания этого решения. Поэтому для того чтобы стать профессионалом, необходим опыт и знание основных принципов, выработанных программистами за время существования программирования.

Рассмотрим основные методы и технологии разработки алгоритмов и программ.

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

Процедурное программирование – метод построения программы как совокупности её функциональных частей - процедур или функций. Каждая процедура или функция представляет собой функционально законченную последовательность действий и выполняется как единая операция.

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

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

Перечисленные методы реализуют одну из возможных технологий современного программирования: нисходящую или восходящую.

Нисходящее проектирование - технология разработки программ, при которой на каждом шаге проектирования задача разбивается на более мелкие подзадачи так, что в любой момент разработки имеется действующий вариант программы в терминах выделенных подзадач.

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

2.1 Сущность структурного программирования

Структурное программирование представляет собой метод, реализующий нисходящую технологию проектирования программ.

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

- разбиение задачи на взаимодействующие более простые подзадачи;

- составление программы последовательными уточняющими шагами сверху вниз;

- использование в программе только стандартных управляющих структур.

Иногда этот метод называют «программированием без goto» (без использования оператора безусловного перехода). Однако никакие принципы нельзя возводить в абсолют. Поэтому иногда использование оператора goto оправдано и приводит к упрощению алгоритма.

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

2.1.1 Базовые управляющие структуры

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

Управляющая структура Следование предполагает последовательное выполнение заданных действий в вычислительном процессе и представляет собой алгоритмическую структуру вида:

Вход

оператор_1

оператор_2

Выход

Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:

…

оператор_1;

оператор_2;

…

При этом оператор_1 и оператор_2 – любые операторы языка.

Управляющая структура Ветвление предполагает выбор одного из двух направлений выполнения действий в вычислительном процессе в зависимости от выполнения или невыполнения заданного условия и представляет собой алгоритмическую структуру вида:

Вход

условие

да нет

оператор_1

оператор_2

Выход

Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:

If условие

Then оператор_1

Else оператор_2;

При этом условие – это выражение логического типа, оператор_1 и оператор_2 – любые операторы языка, в том числе и новые условные операторы.

Если результат вычисление логического выражения (условия) истина (да), то выполняется оператор_1, если результат ложь (нет), то выполняется оператор_2.

Управляющая структура Цикл с предусловием предполагает многократное выполнение некоторого действия при сохранении начальной истинности заданного условия и представляет собой алгоритмическую структуру вида:

Вход

условие

нет

да

оператор

Выход

Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:

While условие

Do оператор;

При этом условие – это выражение логического типа, а оператор – любой оператор языка, который в данном случае называется оператором тела цикла.

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

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

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

Во избежание зацикливания - бесконечного исполнения оператора тела цикла - его исполнение должно влиять на результат условия.