70
Синтаксические ошибки, вызванные неправильной записью
операторов языка программирования, обнаруживаются на этапе
трансляции программы.
Семантические (смысловые) ошибки, вызванные, как правило,
неправильным построением математической модели и алгоритма решения
задачи, при трансляции и выполнении программы не обнаруживаются, так
как программа выполняется и может выдавать результаты.
Для проверки правильности программы производится ее
тестирование, т.е. ее выполнение при таких исходных данных, для которых
результаты решения известны заранее. При выборе тестовых наборов
исходных данных необходимо предусмотреть возможность проверки
различных вариантов решения задачи. Оценка правильности программы
осуществляется сравнением результатов, полученных при выполнении
программы, с тестовыми результатами.
Тестирование позволяет установить факт наличия смысловой
ошибки. Для ее локализации и выявления причины, породившей ошибку,
удобно использовать отладочные операторы, которые позволяют
контролировать выполнение программы, следить за последовательностью
выполнения операторов программы и изменением значений переменных и
элементов массивов во время выполнения программы, проверять
правильность индексирования элементов массивов, контролировать
обращение к подпрограммам.
На этом этапе следует проверить, как ведет себя программа на как
можно большем количестве входных наборов данных, в том числе и на
неверных. Рассмотрим более подробно самый существенный шаг процесса
программирования - алгоритмизацию.
Задача программиста состоит в определении последовательности
действий, которые необходимо выполнить, чтобы достигнуть нужного
результата.