Отладка алгоритмов

Отладкой алгоритма называется процесс выявления и исправления ошибок в нем. Суть отладки алгоритма в том, что выбирается некоторый набор исходных данных, называемый тестовым набором (тестом), и задача с этим набором решается дважды: один раз — исполнением алгоритма, второй раз — каким-либо иным способом, исходя из условия задачи, так сказать, «вручную». При совпадении результатов алгоритм считается верным.

В качестве тестового набора можно выбрать любые данные, которые позволяют:

— обеспечить проверку выполнения всех операций алгоритма;

— свести количество вычислений к минимуму.

Проиллюстрируем этот процесс на примере отладки алгоритма задачи приведенной на этой странице. В этой задаче результат вычисляется одним из трех возможных способов в зависимости от значения ST (стажа работы). В соответствии с этим в тестовый набор включим три варианта значений ST, например такие:

1) ST = 3 (для проверки варианта — ST < 5);

2) ST = 8 (для проверки варианта — 5 <= ST <= 15);

3) ST = 18 (для проверки варианта — 15 < ST).

При каждом значении ST следует решить задачу вручную и исполнить алгоритм. Исходя из условия задачи, несложно установить, что при этих данных получатся такие результаты:

1) ZP = 130 тыс. руб.;

2) ZP = 180 тыс. руб.;

3) ZP = 210 тыс. руб.

Это и есть результаты ручного решения задачи.

Теперь исполним алгоритм при тех же значениях ST:

Вариант 1

1. ST = 3

2. ST < 5 ?

3 < 5 - Да

3. ZP = 130

4. Вывод: ZP = 130

5. Конец

Вариант 2

1. ST = 8

2. ST < 5 ?

8 < 5 - Нет

3. ST <= 15 ?

8 <= 15 - Да

4. ST = 180

5. Вывод: ZP = 180

6. Конец

Исполнение алгоритма при ST = 18, приведенное выше, дало результат: ZP = 210. Вывод: алгоритм верен, так как результаты решения задачи вручную и соответствующие результаты исполнения алгоритма совпали.