Способы описания алгоритмов. Основы графического способа.
Алгоритмы можно записывать не только при помощи слов. В настоящее время различают несколько способов описания алгоритмов:
1. Словесный, т.е. записи на естественном языке, описание словами последовательности выполнения алгоритма.
Например: Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел. Алгоритм может быть следующим: задать два числа; если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма; определить большее из чисел; заменить большее из чисел разностью большего и меньшего из чисел; повторить алгоритм с шага
2. Формульно-словесный, аналогично пункту 1, плюс параллельная демонстрация используемых формул.
В качестве примера можно привести ведение лекций преподавателем (словесный способ) с одновременной записью формул на доске (формульный).
3. Графический, т.е. с помощью блок-схем.
Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным. При графическом исполнении алгоритм изображается в виде последовательности связанных между собой блочных символов, каждый из которых соответствует выполнению одного из действий. Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий. Символы, наиболее часто употребляемые в блок-схемах.
При выполнении схем соблюдают следующие правила:
Все блоки в схеме нумеруются положительными целыми числами.
Соединительные линии не должны пересекаться между собой
Если этого избежать не удается (или схема переносится на другой лист), то на линиях делают разрывы и обозначают соединителями.
На линиях должны указываться стрелки, обозначающие последовательность выполнения действий (стрелки не ставят если процесс идет сверху вниз или слева направо).
Программный, т.е. тексты на языках программирования.