Ошибки могут быть допущены программистом на всех этапах решения задачи — от ее постановки до оформления результатов.
Характерные ошибки следующие: неправильная постановка задачи, неверный алгоритм решения, ошибки анализа, семантические и синтаксические ошибки, ошибки при выполнении операций, ошибки исходных данных, опечатки, ошибки ввода-вывода.
Синтаксические ошибки выявляются компилятором на этапе трансляции. Многие же другие ошибки транслятору выявить невозможно, так как транслятору неизвестен алгоритм решения задачи программиста.
Отсутствие сообщений машины о синтаксических ошибках является только необходимым , но не достаточным условием, чтобы считать программу правильной. |
Существует множество ошибок, которые транслятор выявить не в состоянии, если используемые в программе операторы сформированы верно.
К ним относятся логические ошибки, ошибки управления циклом,
ошибки ввода-вывода, ошибки задания данных,
ошибки при работе с массивами, ошибки арифметических операций.
К примеру, типичны ошибки арифметических операций:
· деление на нуль;
· извлечение квадратного корня или логарифма из отрицательного числа;
· потеря значащих разрядов числа.
Эти ошибки обнаруживаются обычно с помощью тестирования программы.