112
полное и точное описание содержания каждого шага алгоритма
•
на языке выбранной алгоритмической системы;
проверка составленного алгоритма на предмет, действительно ли
•
он реализует выбранный
метод и приводит к искомому результату.
В результате проверки могут быть обнаружены ошибки и неточ-
ности, что вызывает необходимость доработки и коррекции алгорит-
ма — возвращение к одному из
предыдущих пунктов. Во многих
случаях разработка алгоритма включает в себя многократно повто-
ряющуюся процедуру его проверки и коррекции.
Процедура проверки и коррекции алгоритма производится не толь-
ко с
целью устранения ошибок, но и с целью улучшения, т.е. оптими-
зации, алгоритма. При определенном
методе решения задачи оптими-
зация проводится с целью сокращения алгоритмических действий и
упрощения по возможности самих этих действий. При этом алгоритм
должен оставаться «эквивалентным» исходному. Будем называть два
алгоритма эквивалентными если выполняются следующие условия:
1) множество допустимых исходных данных одного из
них явля-
ется множеством допустимых исходных данных другого; из примени-
мости одного алгоритма к каким-либо исходным данным следует
применимость и другого алгоритма к этим данным;
2) применение этих алгоритмов к одним и тем же исходным дан-
ным дает одинаковые результаты.
Приведем пример двух эквивалентных алгоритмов. Пусть нам надо
подсчитать общую сумму чисел, приведенных в табл. 9.1.
Т а б л и ц а 9.1.
целые числа
5
1
3
8
10
9
6
1
5
10
1
1
Эквивалентными будут алгоритмы подсчета общей суммы «по
строкам»: 5
+ 1 + 3 + 8 + 10 + 9 + 6 + 1 + 5 + 10 + 1 + 1 = 60, и «по столб-
цам»: 5
+ 10 + 5 + 1 + 9 + 10 + 3 + 6 + 1 + 8 + 1 + 1 = 60. Заметим, что
для данной таблицы считать проще по столбцам.
Достарыңызбен бөлісу: