- •Тема: Основы алгоритмизации План
- •Упражнения
- •Определение алгоритма.
- •Свойства алгоритмов.
- •Способы описания алгоритма.
- •Базовые структуры схем алгоритма.
- •Структурированные схемы и их построение.
- •Линейные и разветвляющиеся структуры.
- •Циклические структуры. Типы циклов.
- •Предопределённые процессы. Рекурсия.
-
Способы описания алгоритма.
Алгоритмы можно записывать не только при помощи слов. В настоящее время различают несколько способов описания алгоритмов:
1. Словесный способ, т.е. записи на естественном языке, описание словами последовательности выполнения алгоритма.
Например: Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел. Алгоритм может быть следующим: задать два числа; если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма; определить большее из чисел; заменить большее из чисел разностью большего и меньшего из чисел; повторить алгоритм с шага № __.
2. Графический способ, т.е. с помощью блок-схем.
Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным способом. При графическом исполнении алгоритм изображается в виде последовательности связанных между собой блочных символов, каждый из которых соответствует выполнению одного из действий. Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий. Символы, наиболее часто употребляемые в блок-схемах.
3. Программный способ, т.е. тексты на языках программирования.
cls |
input a, b |
c = a + b |
print c |
-
Базовые структуры схем алгоритма.
Базовые структуры алгоритмов — это определенный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий.
К основным структурам схем алгоритмов относятся:
-
Следование;
-
Ветвление (полное и не полное);
-
Повторение (цикл с предусловием или постусловием);
-
Вход;
-
Выход.
Следованием называются схемы алгоритмов, в которых действия осуществляются последовательно друг за другом. Стандартная блок-схема линейного алгоритма приводится ниже:
Ветвлением называется схема алгоритма, в которой действие выполняется по одной из возможных ветвей решения задачи, в зависимости от выполнения условий. В отличие от линейных алгоритмов, в которых команды выполняются последовательно одна за другой, в разветвляющиеся алгоритмы входит условие, в зависимости от выполнения или невыполнения которого выполняется та или иная последовательность команд (действий).
В качестве условия в разветвляющемся алгоритме может быть использовано любое понятное исполнителю утверждение, которое может соблюдаться (быть истинно) или не соблюдаться (быть ложно). Такое утверждение может быть выражено как словами, так и формулой. Таким образом, алгоритм ветвления состоит из условия и двух последовательностей команд.
В зависимости от того, в обеих ветвях решения задачи находится последовательность команд или только в одной разветвляющиеся алгоритмы делятся на полные и не полные (сокращенные). Стандартные блок-схемы разветвляющегося алгоритма приведены ниже:
Повторением называется схема алгоритма, в которой некоторая часть операций (тело цикла — последовательность команд) выполняется многократно. Однако слово «многократно» не значит «до бесконечности». Организация циклов, никогда не приводящая к остановке в выполнении алгоритма, является нарушением требования его результативности — получения результата за конечное число шагов.
Перед операцией цикла осуществляются операции присвоения начальных значений тем объектам, которые используются в теле цикла. В цикл входят в качестве базовых следующие структуры:
-
блок проверки условия
-
блок, называемый телом цикла
Каждая базовая структура имеет один вход и один выход.