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