- •1 Введение в алгоритмизацию и программирование 2
- •2 Алгоритмы разветвляющихся процессов 8
- •3 Алгоритмы циклических процессов 12
- •3.1 Оператор цикла со счетчиком 12
- •4 Алгоритмы вычисления функций 17
- •5 Алгоритмы обработки одномерных массивов 20
- •5.1 Алгоритмы обработки одномерных массивов 20
- •1 Введение в алгоритмизацию и программирование
- •1.2 Основные свойства алгоритмов
- •1.3 Основные элементы блок – схем алгоритмов
- •1.4 Типовые структуры алгоритмов
- •1.4.1 Линейные алгоритмы
- •1.4.2 Алгоритмы ветвящихся процессов
- •1.4 .2.1 Алгоритм разветвления
- •1.4.2.2 Алгоритм обхода
- •1.4.2.3 Алгоритм множественного выбора
- •1.4.3 Алгоритмы циклических процессов
- •1.4.3.1 Оператор цикла со счетчиком
- •1.4.3.2 Оператор цикла с предусловием
- •1.4.3.3 Оператор цикла с постусловием
- •Вопросы для самопроверки
- •2 Алгоритмы разветвляющихся процессов
- •2.1 Алгоритмы с простыми условиями
- •2.2 Алгоритмы с составными условиями
- •Вопросы для самопроверки
- •3 Алгоритмы циклических процессов
- •Вопросы для самопроверки
- •4 Алгоритмы вычисления функций
- •Вопросы для самопроверки
- •5 Алгоритмы обработки одномерных массивов
- •5.1 Алгоритмы обработки одномерных массивов
- •5.2 Алгоритмы вычисления суммы и произведения
- •5.3 Алгоритмы определения экстремального элемента
- •Вопросы для самопроверки
1.4.3.2 Оператор цикла с предусловием
Под действием понимается простая или составная команда. Исполнение такой команды повторения состоит в том, что сначала проверяется условие, и если оно соблюдено, то выполняется команда, записанная после слова повторять. После этого снова проверяется условие. Выполнение цикла завершается, когда условие перестает соблюдаться. Для этого необходимо, чтобы команда, выполняемая в цикле, влияла на условие.
Оператор цикла с предусловием записывается в следующем виде:
Пока < условие > повторять < действие >
1.4.3.3 Оператор цикла с постусловием
Этот оператор выполняется аналогично оператору цикла с предусловием, только условие проверяется после выполнения команды, а повторение выполнения команды происходит в том случае, когда условие не соблюдено, т.е. повторение производится до соблюдения условия. Оператор цикла с постусловием записывается следующим образом:
Повторять < действие > до < условие >
Этап решения задачи, результатом которого является разработка алгоритма, называют алгоритмизацией, понимая под этим сведение задачи к последовательности этапов, выполняемых последовательно друг за другом. В широком смысле алгоритмизация включает и выбор метода решения задачи, а также формы представления исходной информации с учетом специфики ЭВМ.
Алгоритмизация часто носит итерационный (повторяющийся с возвратом к исходной точке) характер. Другими словами, процедура решения задачи часто уточняется в процессе решения задачи. Однако необходимо стремиться к наиболее полной и детальной проработке алгоритмов еще на ранних стадиях.
Вопросы для самопроверки
Что называется алгоритмом?
Что называется программой?
Какими свойствами обладает алгоритм?
Из каких элементов состоят блок-схемы?
Какие бывают алгоритмические структуры?
Какие существуют алгоритмы ветвления?
Какого типа бывают циклические алгоритмы?
2 Алгоритмы разветвляющихся процессов
Алгоритмом разветвляющегося процесса называется такой алгоритм, в котором выбирается один из нескольких возможных путей (вариантов) вычислительного процесса. Каждый подобный путь называется ветвью алгоритма.
Признаком разветвляющегося алгоритма является наличие операций проверки условия. Обычно различают два вида условий – простые и составные.
2.1 Алгоритмы с простыми условиями
Простым условием (отношением) называется выражение, составленное из двух арифметических выражений или двух текстовых величин, связанных одним из знаков: < , > , <= , >= , = , <>, != и другими, в зависимости от используемого алгоритмического языка.
Примеры отношений:
X + Y < 7; Y >= Ln ( Z ); R < (X – Y); В = « Да » (где В – текстовая переменная).
В блок-схеме алгоритма операцию проверки условия выполняет логический блок, который изображен на рисунке:
Если условие (отношение) истинно (выполняется), то выходим из блока по выходу Да; если ложно (не выполняется) – по выходу Нет. Кроме того, условие (отношение), содержащееся в логическом блоке, может быть заменено на противоположное, при этом выходы Да и Нет меняются местами.
Рассмотрим несколько задач, решение которых требует составления разветвляющихся алгоритмов с простыми условиями.
Существуют задачи, связанные с вычислением функций, заданных несколькими арифметическими выражениями. Это особенно распространенно при решениях экономических задач, когда алгоритм решения задачи чаще всего является разветвляющимся. Рассмотрим примеры решения таких задач:
Постановка задачи: составить блок-схему алгоритма вычисления значений функции Y при различных значениях Х:
Блок-схема алгоритма:
Постановка задачи: составить блок-схему алгоритма вычисления максимального из значений трех переменных: x, y, z.
Решение этой задачи приведено на рис. 2.3.