При проектировании визуальных алгоритмов используют следующие
графические блоки, представленные на рис. 2.
Рассмотрим общие правила при проектировании визуальных
алгоритмов:
в начале алгоритма должны быть блоки ввода значений
входных данных;
после ввода значений входных данных могут следовать
блоки обработки и блоки условия;
в конце алгоритма должны располагаться блоки вывода
значений выходных данных;
в алгоритме должен быть только один блок начала и один
блок окончания;
связи между блоками указываются направленными или
ненаправленными линиями.
Этап проектирования алгоритма следует за этапом выбора
формальной модели и методов решения задачи, на котором определены
входные и выходные данные, а также зависимости между ними.
При построении алгоритмов для сложной задачи используют
системный подход с использованием последовательной декомпозиции
решаемой задачи на ряд подзадач до тех пор, пока не будут определены
задачи, для которых алгоритмическое решение известно или оно может
|
|
быть оперативно найдено.
Одним из системных методов разработки алгоритмов является метод
структурной алгоритмизации. Этот метод основан на визуальном
представлении алгоритма в виде последовательности управляющих
структурных фрагментов. Выделяют три базовые управляющие процессом
обработки информации структуры: композицию, альтернативу и итерацию.
С помощью этих структур можно описать решение большого класса задач
обработки информации.
Композиция (следование) – это линейная управляющая
конструкция, не содержащая альтернативу и итерацию. Она предназначена
для описания единственного процесса обработки информации.
Альтернатива – это нелинейная управляющая конструкция, не
содержащая итерацию. Она предназначена для описания процессов
решения различных задач обработки информации, выбор которых зависит
от значений входных данных.
Итерация – это циклическая управляющая конструкция, которая
содержит композицию и ветвление. Она предназначена для организации
повторяющихся процессов обработки последовательности
значений данных.
Линейные алгоритмы не содержат блока условия. Они
предназначены для представления линейных процессов. Такие алгоритмы
применяют для описания обобщенного решения задачи в виде
последовательности модулей.
Пример линейного алгоритма приведен на рис. 3.
В соответствии с наличием в алгоритмах управляющих структур
композиции, альтернативы и итерации алгоритмы классифицируют на
линейные, разветвленные и циклические алгоритмы.