8.12. Какие ошибки не
обнаруживаются транслятором?
Существует множество ошибок, которые
транслятор выявить не в состоянии, если
используемые в программе операторы
сформированы верно. Приведем примеры таких
ошибок.
Логические ошибки:
| неверное указание ветви алгоритма после
проверки некоторого условия;
| неполный учет возможных условий;
| пропуск в программе одного или более
блоков алгоритма. |
| |
Ошибки в циклах:
| неправильное указание начала цикла;
| неправильное указание условий
окончания цикла;
| неправильное указание числа повторений
цикла;
| бесконечный цикл. |
| | |
Ошибки ввода-вывода; ошибки
при работе с данными:
| неправильное задание тип данных;
| организация считывания меньшего или
большего объёма даных, чем требуется;
| неправильное редактирование данных. |
| |
Ошибки в использовании
переменных:
| использование переменных без указания
их начальных значений;
| ошибочное указание одной переменной
вместо другой. |
|
Ошибки при работе с
массивами:
| массивы предварительно не обнулены;
| массивы неправильно описаны;
| индексы следуют в неправильном порядке. |
| |
Ошибки в арифметических
операциях:
| неверное указание типа переменной (например,
целочисленного вместо вещественного);
| неверное определение порядка действий;
| деление на нуль;
| извлечение квадратного корня из
отрицательного числа;
| потеря значащих разрядов числа. |
| | | |
Все эти ошибки обнаруживаются с помощью
тестирования.
|