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

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

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

Свойства алгоритма:

  1. Дискретность (прерывность, раздельность) – алгоритм должен представлять процесс решения задачи как последовательное выполнение простых (или ранее определенных) шагов. Каждое действие, предусмотренное алгоритмом, исполняется только после того, как закончилось исполнение предыдущего.

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

  3. Результативность (конечность) – алгоритм должен приводить к решению задачи за конечное число шагов.

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

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

Алгоритмы и программы разрабатываются с использованием трех элементарных базовых управляющих структур: следование, разветвление, цикл (повторение).

На рисунке 1.1 показаны элементарные базовые управляющие структуры: а - следование, б - разветвление, в - вариант разветвления, г - цикл с предусловием, д - цикл с постусловием. На схемах: S, S1 и S2 – выполняемые действия, Р – логическое условие. Те или иные действия выполняются в зависимости от того, верно или нет логическое условие.

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

Рисунок 1.1 − Элементарные базовые управляющие структуры алгоритма

Следование

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

Разветвление

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

Цикл

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

1.4Правила оформления блок-схемы алгоритма

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

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

Составление блок-схем регламентируются следующими документами:

ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.

ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения.

ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные графические

Операции обработки данных и носители информации изображаются на схеме соответствующими блоками. Большая часть блоков по построению условно вписана в прямоугольник со сторонами а и b. Минимальное значение а равно 10 мм, увеличение а производится на число, кратное 5 мм. Размер b=1,5 мм. Для отдельных блоков допускается соотношение между а и b, равное 1:2. В пределах одной схемы рекомендуется изображать блоки одинаковых размеров. Все блоки нумеруются

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

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

Если при обрыве линии продолжение схемы находится на этом же листе, то на одном и другом конце линии изображается специальный символ соединитель — окружность диаметром 0,5 мм. Внутри парных окружностей указывается один и тот же идентификатор. В качестве идентификатора, как правило, используется порядковый номер блока, к которому направлена соединительная линия. Если схема занимает более одного листа, то в случае разрыва линии вместо окружности используется межстраничный соединитель. Внутри каждого соединителя указывается адрес — откуда и куда направлена соединительная линия. Адрес записывается в две строки: в первой указывается номер листа, во второй — порядковый номер блока.

Блок-схема должна содержать все разветвления, циклы и обращения к подпрограммам, содержащиеся в программе.

Таблица 1.1 − Описание символов блок-схемы

Наименование

Обозначение

Функции

Процесс

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

Ввод-вывод

Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод).

Решение

Выбор направления выполнения алгоритма в зависимости от некоторых переменных условий.

Предопределенный процесс

Использование ранее созданных и отдельно написанных программ (подпрограмм).

Документ

Вывод данных на бумажный носитель.

Магнитный диск

Ввод-вывод данных, носителем которых служит магнитный диск.

Терминатор

Начало, конец, прерывание процесса обработки данных.

Соединитель

Указание связи между прерванными линиями, соединяющими блоки.

Межстраничный соединитель

Указание связи между прерванными линиями, соединяющими блоки, расположенные на разных листах.

Комментарий

Связь между элементом схемы и пояснением.

 

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