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

7. Сопровождение программы.

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

Таким образом, соблюдая порядок этапов решения задач, можно правильно выполнить задание и при этом избежать ошибок.

1.2Понятие алгоритма и его свойства

Алгоритм — точный набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное время [2]. Первоначально под алгоритмами понимали только правила выполнения четырех арифметических действий над многозначными числами. В дальнейшем это понятие стали использовать вообще для обозначения последовательности действий, приводящих к решению поставленной задачи [3]. Приведем, к примеру, некоторые ситуации из жизни: любой прибор, купленный в магазине, снабжается инструкцией по его использованию; каждый шофер должен знать правила дорожного движения; массовый выпуск автомобилей стал возможен только тогда, когда был придуман порядок сборки машины на конвейере. Эти примеры не что иное, как алгоритм. Несмотря на значительное различие в сути самих действий этих примеров, можно найти в них много общего. Эти общие характеристики называют свойствами алгоритма. Рассмотрим их[4]:

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

Детерминированность (от лат. determinate — определенность, точность) - любое действие алгоритма должно быть строго и недвусмысленно определено в каждом случае. Например, если к остановке подходят автобусы разных маршрутов, то в алгоритме должен быть указан конкретный номер маршрута — 5.

Конечность (или результативность) - каждое действие в отдельности и алгоритм в целом должны иметь возможность завершения.

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

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

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

Базовые структуры алгоритмов — это определенный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий.

В алгоритмическом языке используют линейные (алгоритмы следования), разветвляющиеся и циклические алгоритмы [5]

Алгоритмы линейной структуры – последовательность блоков, каждый из которых имеет по одному входу и одному выходу и выполняется в программе один раз (рис. 1.1).

Рисунок 1.1 – Пример линейной структуры алгоритма

Алгоритмы разветвляющейся структуры – алгоритм, в котором в зависимости от значений некоторого признака производится выбор одного из нескольких направлений, называемых ветвями. В основе разветвления лежит проверка логического условия, которое может истинно или ложно. Частный вид логического условия – это операции типа =, <> <, >, <=, >= (рис. 1.2).

Рисунок 1.2. – Пример разветвляющейся структуры алгоритма

Алгоритм циклической структуры включает в себя многократно повторяющиеся участки вычислений для различных значений данных (рис. 1.3). Циклические алгоритмы по способу организации выхода из цикла разделяют на арифметические и итерационные. Количество повторений в первых - заранее известно или может быть легко вычислено. Количество повторений во вторых – заранее неизвестно. Выход из них осуществляется по достижении заданной точности при приближении к искомому значению. Различают циклы с предусловием и постусловием:

а)

б)

Рисунок 1.3. – Пример циклических структур с предусловием (а) и постусловием (б)

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

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