Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дорошенко.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
658.94 Кб
Скачать

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

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

  1. определенность – означает, что указания, составляющие алгоритм, должны быть четкими и однозначными, не допускающими произвольного или двусмысленного толкования. Это требование является гарантией того, что исполнителем алгоритма может быть не только человек, но и объект, не обладающий интеллектуальными способностями, в частности, компьютер;

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

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

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

  5. массовость алгоритма – пригодность алгоритма для решения множества однотипных (некоторого класса) задач, то есть возможность применения алгоритма для решения задач с различными данными (например, программа должна решать задачу перемножения любых чисел А*В, а не вычислять только 2*3).

  1. Язык графического представления алгоритмов

При разработке сложных программ, а также для начинающих программистов удобно алгоритм представлять в виде схемы. В соответствии со стандартами изображения схем алгоритмов (ГОСТ 19.002-80, ИСО 2636-73) язык графического представления алгоритма содержит геометрические фигуры, обозначающие выполняемые действия:

  • вход и выход алгоритма (начальная и конечная точки) изображают в виде окружности, овала или скругленного прямоугольника – рис.1.1а, и 1.1б; «Начало» «Конец»

  • ввод-вывод данных изображают в виде параллелограма, текст внутри которого конкретизирует операцию – рис.1.1в и 1.1г; «Ввод: N, A,B» «Вывод: X,Y,Z»

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

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

  • модификацию переменной цикла (начало или заголовок цикла) при циклическом вычислении – изображают в виде вытянутого по горизонтали шестиугольника с двумя входящими стрелками (вход в начало цикла – сверху, продолжение цикла - сбоку) и с двумя выходящими стрелками (выполнение операций в цикле – выход вниз, выход из цикла – сбоку); внутри шестиугольника указываются переменная цикла, ее начальное и конечное значения и шаг изменения (по умолчанию шаг изменения равен 1) – рис.1.1и;

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

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

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

Средства графического представления алгоритмов

Рис. 3.1,а. Начало. Рис. 3.1,б. Конец.

Рис. 3.1,в. Ввод данных Рис. 3.1,г. Вывод данных

Рис. 3.1,д. Вычислительный процесс

да нет >0 <0 + -- - ----------

Рис. 3.1,е. Рис. 3.1,ж. Рис 3.1,з

Выбор направления выполнения алгоритма

...

Рис.3.1,и. Модификация переменной цикла

(начало или заголовок цикла)

Рис.3.1,к. Выполнение по подпрограмме

Рис.3.1,л. Указание соединений между блоками, расположенными на данной странице.

Рис.3.1,м. Указание соединений между блоками, расположенными на разных страницах