lec_2_sem_2_inf.ppt
- Количество слайдов: 12
Основы алгоритмизации и программирования Алгоритм. Понятие блок-схемы. Основные структурные формы алгоритмов
Под алгоритмом понимают понятное и точное предписание (указание) исполнителю совершить определенную последовательность действий, направленных на достижение указанной цели или решение поставленной задачи. Слово «алгоритм» происходит от латинской формы написания имени великого математика IX века аль-Хорезми, который сформулировал правила выполнения арифметических действий. Алгоритм построения биссектрисы угла CAB: поставить ножку циркуля в вершину угла точку А; проведем окружность произвольного радиуса; отметим точки пересечения окружности со сторонами угла и обозначим их С и В; Ø поставить ножку циркуля в точку В; Ø провести окружность радиуса ВС; Ø поставить ножку циркуля в точку С; Ø провести окружность радиуса ВС; Ø через точку пересечения окружностей и вершину угла А провести прямую.
Запись алгоритма обычно распадается на отдельные указания исполнителю выполнить некоторое законченное действие, которое называется командой. Основные свойства алгоритма Дискретность алгоритма. Разделение выполнения решения задачи на отдельные операции (выполняемые исполнителем по определенным командам). Поочередное выполнение команд алгоритма за конечное число шагов приводит к решению задачи, к достижению цели. Определенность алгоритма. Каждый алгоритм рассчитан на конкретного исполнителя. Для того чтобы исполнитель мог решить задачу по заданному алгоритму, необходимо, чтобы он был в состоянии понять и выполнить каждое действие, предписываемое командами алгоритма. Результативность алгоритма. Исполнение алгоритма должно закончиться за конечное число шагов. Массовость алгоритма. Каждый алгоритм, разработанный для решения некоторой задачи, должен быть применим для решения задач этого типа при всех допустимых значениях исходных данных.
Способы описания алгоритма Словесно-формульное описание алгоритма, т. е. описание алгоритма с помощью математических формул и слов. Примером может служить любой кулинарный рецепт. Графическое описание алгоритма. Описание алгоритма с помощью специальных схем, которые принято называть блок-схемами. Алгоритм изображается в виде системы связанных геометрических фигур, порядок выполнения этапов обозначается стрелками. Операции разного вида изображают с помощью разных геометрических фигур. операция «присваивания» Х: =5*А
операции «ввод» и «вывод» Вывод А, В Ввод А, В операция «условный переход» Нет А>0 Да «Начало» и «Конец» в блок-схеме Начало Конец
Описание алгоритма на алгоритмическом языке. Запись алгоритма на алгоритмическом языке близка к его словесно-формульному описанию, разница заключается в том, что алгоритмические языки пользуются ограниченным набором терминов, с целью обеспечения однозначности понимания алгоритма. В качестве примера рассмотрим решение задачи. Задача. Для проведения экспериментов необходимо отобрать образцы длиной не менее 19 см и не более 23 см. Составить алгоритм, по которому, зная длину, можно сделать вывод о том, подходит ли образец для эксперимента. Определить, пройдет ли отбор образец длиной 22 см. и длиной 27 см? Постановка задачи. Учитывая, что алгоритм решения этой задачи должен быть универсальным и позволять работать не только с приведенными в задаче данными, обозначим заданные числа переменными а, Ь, с при условии, что а=19 см; Ь=23 см; с=22 см. Подобное обобщение задачи позволит решать ее и при других значениях исходных величин. Например, и для случая, когда образец будет длиной 27 см.
Математическая модель. Далее задачу необходимо перевести на язык математики, т. е. перейти от реальной задачи к математической модели. Она может иметь следующий вид: Задан отрезок [а, Ь] числовой оси X и точка С на этой оси с координатой с. Определить, лежит ли точка С на отрезке [а, Ь]. Метод решения задачи. Проверить, выполняется ли условие а< с < Ь. Если условие выполняется, то образец с такими параметрами проходит для эксперимента, если нет, то не проходит. Алгоритм решения задачи. Составим алгоритм решения задачи и изобразим его в виде блок-схемы
Начало Ввод a, b, c Да а>c Нет c<b Да Печать «образец подходит» Начало Печать «образец не подходит»
Виды алгоритмов Линейные алгоритмы — алгоритм, в котором все этапы решения задач выполняются строго последовательно. Начало Ввод исходных данных Действие 1 Действие N Вывод результатов Конец
Разветвляющиеся алгоритмы. Алгоритм, в котором выбирается один из нескольких возможных вариантов вычислительного процесса, называется разветвляющимся. Начало Ввод исходных данных Да Условие выполнено? Нет Действие 2 Вывод результатов Конец Действие 1
Циклические алгоритмы — это алгоритмы, в которых одна или несколько команд выполняются многократно. Начало Ввод исходных данных Да Условие выполнено? Нет Действие 2 Вывод результатов Конец Действие 1
Алгоритм любой сложности можно составить, используя комбинацию из этих трех основных конструкций. Составив блок-схему алгоритма, ее можно закодировать на языке программирования.
lec_2_sem_2_inf.ppt