Ошибки в программах Delphi разделяют на три основные группы:
· синтаксические (ошибки в тексте);
· алгоритмические;
· исключения.
Синтаксические ошибки, их также называют ошибками времени компиляции (Compile-time error), наиболее легко устранимы. Их обнаруживает компилятор Delphi еще до запуска программы – на этапе компиляции, а программисту остается только внести изменения в текст программы и выполнить повторную компиляцию. Если программа откомпилирована и ее удается запустить на выполнение, то значит в программе нет синтаксических ошибок.
Компиляция программы, в которой есть алгоритмические ошибки, завершается успешно. При пробных запусках программа ведет себя нормально, однако при анализе результата выясняется, что он неверный. Для того чтобы устранить алгоритмическую ошибку, приходится анализировать алгоритм, вручную "прокручивать" его выполнение.
Нарушения в работе программы или ошибки времени выполнения (Run-time error) называются в Delphi исключениями (exception). Их причиной, как правило, являются действия пользователя, хотя фактически исключения можно классифицировать как алгоритмические ошибки.
Например, следующая программа, которая выводит на экран частное двух чисел a и b будет работать правильно сколь угодно раз до тех пор, пока пользователь не введет значение b=0. В этом случае произойдет так называемая исключительная ситуация: деление на ноль.
Var
a,b:integer;
c:real;
Begin
write(’Введите число a:’); readln(a);
write(’Введите число b:’); readln(b);
c:=a/b;
write(’Результат a/b=’,c:7:4);
End.