Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Характерные ошибки программирования

Ошибки могут быть допущены на всех этапах решения задачи — от ее постановки до оформления. Разновидности ошибок и соответствующие примеры приведены в таблице:

Вид ошибки Пример
Неправильная постановка задачи Правильное решение неверно сформулированной задачи
Неверный алгоритм Выбор алгоритма, приводящего к неточному или эффективному решению задачи
Ошибка анализа Неполный учет ситуаций, которые могут возникнуть; логические ошибки
Семантические ошибки Непонимание порядка выполнения оператора
Синтаксические ошибки Нарушение правил, определяемых языком программирования
Ошибки при выполнении операций Слишком большое число, деление на ноль, извлечение квадратного корня из отрицательного числа и т. п.
Ошибки в данных Неудачное определение возможного диапазона изменения данных
Опечатки Перепутаны близкие по написанию символы, например, цифра 1 и буквы I, l
Ошибки ввода-вывода Неверное считывание входных данных, неверное задание форматов данных

8.11. Является ли отсутствие синтаксических ошибок свидетельством правильности программы?

Обычно синтаксические ошибки выявляются на этапе трансляции. Многие же другие ошибки транслятору выявить невозможно, так как транслятору неизвестны замыслы программиста.

Отсутствие сообщений машины о синтаксических ошибках является необходимым, но не достаточным условием, чтобы считать программу правильной.

Примеры синтаксических ошибок:

· пропуск знака пунктуации;

· несогласованность скобок;

· неправильное формирование оператора;

· неверное образование имен переменных;

· неверное написание служебных слов;

· отсутствие условий окончания цикла;

· отсутствие описания массива и т.п.

8.12. Какие ошибки не обнаруживаются транслятором?

Существует множество ошибок, которые транслятор выявить не в состоянии, если используемые в программе операторы сформированы верно. Приведем примеры таких ошибок.

Логические ошибки:

· неверное указание ветви алгоритма после проверки некоторого условия;

· неполный учет возможных условий;

· пропуск в программе одного или более блоков алгоритма.

Ошибки в циклах:

· неправильное указание начала цикла;

· неправильное указание условий окончания цикла;

· неправильное указание числа повторений цикла;

· бесконечный цикл.

Ошибки ввода-вывода; ошибки при работе с данными:

· неправильное задание тип данных;

· организация считывания меньшего или большего объёма даных, чем требуется;

· неправильное редактирование данных.

Ошибки в использовании переменных:

· использование переменных без указания их начальных значений;

· ошибочное указание одной переменной вместо другой.

Ошибки при работе с массивами:

· массивы предварительно не обнулены;

· массивы неправильно описаны;

· индексы следуют в неправильном порядке.

Ошибки в арифметических операциях:

· неверное указание типа переменной (например, целочисленного вместо вещественного);

· неверное определение порядка действий;

· деление на нуль;

· извлечение квадратного корня из отрицательного числа;

· потеря значащих разрядов числа.

Все эти ошибки обнаруживаются с помощью тестирования.

<== предыдущая лекция | следующая лекция ==>
Этапы процесса тестирования | Системы автоматизированного проектирования (САПР)
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 556; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.