Глава 1. Понятие алгоритма, базовые алгоритмические констркуции - 1.2. Свойства алгоритма

E-mail Печать PDF
Рейтинг пользователей: / 17
ХудшийЛучший 
Индекс материала
Глава 1. Понятие алгоритма, базовые алгоритмические констркуции
1.2. Свойства алгоритма
1.3. Способы записи алгоритмов
1.4. Базовые алгоритмические конструкции
1.4.1. Линейные алгоритмы
1.4.2. Разветвляющиеся алгоритмы
1.4.3. Циклические алгоритмы
1.4.4. Итерационные циклы
1.4.5. Вложенные циклы
1.4.6. Использование рекуррентной формулы
1.5. Тестирование алгоритма
Все страницы

1.2. Свойства алгоритма

Алгоритм должен обладать определенными свойствами, наличие которых гарантирует получение решения задачи исполнителем. Рассмотрим их подробнее.

Дискретность. Решение задачи должно быть разбито на элементарные действия. Запись отдельных действий реализуется в виде упорядоченной последовательности отдельных команд, образующих дискретную структуру алгоритма. Это свойство непосредственно отражено в определении алгоритма.

Понятность. Как мы уже говорили, на практике любой алгоритм предназначен для определенного исполнителя и любую команду алгоритма исполнитель должен уметь выполнить.

Определенность (детерминированность). Каждая команда алгоритма должна определять однозначные действия исполнителя. Результат их исполнения не должен зависеть от факторов, не учтенных в алгоритме явно. При одних и тех же исходных данных алгоритм должен давать стабильный результат.

Массовость. Разработанный  алгоритм должен давать возможность получения результата при различных исходных данных для однотипных задач.

Например, пользуясь алгоритмом решения квадратного уравнения, можно находить его корни при любых значениях коэффициентов.

Свойство массовости полезное, но не обязательное свойство алгоритма, так как интерес представляют и алгоритмы, пригодные для решения единственной задачи.

Результативность (конечность). Это свойство предполагает обязательное получение результата решения задачи за конечное число шагов. Под решением задачи понимается и сообщение о том, что при заданных значениях исходных данных задача решения не имеет.

Если решить задачу при заданных значениях исходных данных за конечное число шагов не удается, то говорят, что алгоритм «зацикливается».

Смысл условий дискретности, понятности и определенности ясен: их нарушение ведет к невозможности выполнения алгоритма. Остальные условия не столь очевидны. Для сложных алгоритмов выполнить исчерпывающую проверку результативности и корректности невозможно. Это равносильно полному решению задачи, для которой создан алгоритм, вручную.

 

Пример 1.2

Составить алгоритм решения уравнения вида ax = b, где a и b - произвольные числа.

Дано: а, b - произвольные числа.

Найти x - корень уравнения ax = b.

Математическая модель:

x = b/a при a ? 0;

x - любое число при a = 0 и b = 0;

решений нет при a = 0 и b ? 0.

Алгоритм решения задачи можно представить схематично:

 

 

Запишем алгоритм так, как мы писали его раньше.

1.     Задать числовые значения a, b.

2.     Если a ? 0, то x = b/a. Перейти к п. 5.

3.     Если b = 0, то x - любое число. Перейти к п. 6.

4.     Если b ? 0, то решений нет. Перейти к п. 6.

5.     Записать в качестве ответа значение x.

6.     Конец.

Можно записать общие правила, руководствуясь которыми следует записывать алгоритм решения задачи.

1.     Выделить величины, являющиеся исходными данными для задачи.

2.     Разбить решение задачи на такие команды, каждую из которых исполнитель может выполнить однозначно.

3.     Указать порядок выполнения команд.

4.     Указать признак окончания процесса решения задачи.

5.     Указать, что является результатом решения задачи в каждом из возможных случаев.



 

Добавьтe Ваш комментарий

Ваше имя (псевдоним):
Ваш адрес почты:
Заголовок:
Комментарий:

Комментарии

Интересное




Похожие материалы

Партнёры