Алгоритмы и способы их описания.
Алгоритмы и способы их описания
- Алгоритмы могут описывать процессы преобразования самых разных объектов. Само слово «алгоритм» происходит от «algorithmi» — латинской формы написания имени выдающегося математика IX века аль-Хорезми, который сформулировал правила выполнения арифметических операций.
- Алгоритм — набор команд, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное число действий.
Алгоритмы и способы их описания
Свойства алгоритмов:
1. Дискретность — алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. При этом
для выполнения каждого шага алгоритма требуется конечный отрезок времени, то есть преобразование исходных данных в результат осуществляется во времени дискретно.
2. Детерминированность (определённость).
В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. Таким образом, алгоритм выдаёт один и тот же результат (ответ) для одних и тех же исходных данных.
Алгоритмы и способы их описания
3. Понятность — алгоритм должен включать только те команды, которые доступны исполнителю и входят в его систему команд.
4. Завершаемость (конечность) — при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конечное число шагов.
5. Массовость (универсальность). Алгоритм должен быть применим к разным наборам исходных данных.
6. Результативность — завершение алгоритма определёнными результатами.
Способы записи алгоритмов:
1. Словесный способ записи
Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении
на естественном языке.
Пример
В качестве примера словесного способа записи алгоритма рассмотрим алгоритм нахождения площади прямоугольника
S=a*b.
где S – площадь прямоугольника; а, b – длины его сторон.
Очевидно, что a, b должны быть заданы заранее, иначе задачу решить невозможно.
Способы записи алгоритмов
Словесный способ записи алгоритма выглядит так:
- Начало алгоритма.
- Задать численное значение стороны a.
- Задать численное значение стороны b.
- Вычислить площадь S прямоугольника по формуле S=a*b.
- Вывести результат вычислений.
- Конец алгоритма.
Способы записи алгоритмов
2. Графический способ
При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий.
Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий. Далее приведены наиболее часто употребляемые символы.
Способы записи алгоритмов
Элемент блок-схемы
|
Наименование
|
Содержание
|
|
Блок вычислений (вычислительный блок)
|
Вычислительные действия или последовательность действий
|
|
Логический блок (блок условия)
|
Выбор направления выполнения алгоритма в зависимости от некоторого условия
|
|
Блок ввода-вывода данных
|
Общее обозначения ввода (вывода) данных (вне зависимости от физического носителя)
|
|
Начало (конец)
|
Начало или конец алгоритма, вход или выход в подпрограмме
|
Способы записи алгоритмов
Элемент блок-схемы
|
Наименование
|
Содержание
|
|
Процесс пользователя (подпрограмма)
|
Вычисление по стандартной программе или подпрограмме
|
|
Блок модификации
|
Функция выполняет действия, изменяющие пункты (например, заголовок цикла) алгоритма
|
|
Соединитель
|
Указание связи прерванными линиями между потоками информации
|
Способы записи алгоритмов
Пример
Алгоритм вычисления площади прямоугольника
Способы записи алгоритмов
3. Псевдокоды
полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.
Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором служебных слов и основных (базовых) конструкций.
Способы записи алгоритмов
Пример
- Начало. Перейти к пункту 2.
- Ввод чисел a и b. Перейти к пункту 3.
- Вычислить S=a*b. Перейти к пункту 4.
- Вывод S. Перейти к пункту 5.
- Конец.
Способы записи алгоритмов
4. Программный способ
Запись алгоритма на выбранном языке программирования.
Пример
…
a = input()
b = input()
s = a + b
print(s)
Виды алгоритмов
1. Линейный алгоритм
Это алгоритм, в котором есть только структура следование.
Следование – это расположение действий друг за другом.
Виды алгоритмов
2. Разветвляющийся алгоритм (если … то… иначе…)
Это алгоритм, в котором есть структура ветвление.
Ветвление – это выбор действия в зависимости от выполнения какого-нибудь условия.
Виды алгоритмов
3. Циклический алгоритм
это алгоритм, в котором есть структура цикл.
Цикл – это неоднократное повторение каких-либо действий.
Виды алгоритмов
4. Комбинированный алгоритм
Алгоритм, в котором содержится несколько структур одновременно.
Спасибо за внимание