Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Билет №39





Локализация и исправление ошибок в процессе отладки в Турбо-среде.

Ошибки в программе могут проявиться двумя способами:

1) во время выполнения программы в виде исключительных ситуаций,

2) после выполнения программы в виде неправильного решения.

Отладка - это процесс поиска и исправления ошибок в программе

Цель отладки - получение правильной программы, т.е. программы, в которой отсутствуют ошибки проекта. Ошибки проекта включают ошибки, которые могут возникнуть на всех этапах разработки программы.

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

Процесс отладки состоит из трех этапов:

- контроль правильности программы,

- локализация ошибок, обнаруженных в процессе контроля,

- исправление ошибок.

 

МЕТОД ТРАССИРОВКИ:

Цель метода - локализация ошибки, т.е. обнаружение точного места в программе, где находится источник ошибки. Суть этого метода состоит в пошаговом выполнении всех действий, которые предписаны программой.

Трассировка может являться способом визуального контроля и выполняться без помощи компьютера, а также может выполняться с помощью компьютера.

При визуальном контроле все действия в программе выполняются вручную. Значения всех промежуточных переменных записывают в таблицу. Столбцы таблицы соответствуют переменным программы, их имена указывают в заголовках столбцов. Ниже, по мере выполнения программы, записываются значения, которые эти переменные получают на каждом шаге. В конце концов, в таблице окажется весь протокол состояния переменных в ходе выполнения программы.

В качестве примера рассмотрим фрагмент программы: нахождение максимального значения в последовательности, которая вводится из файла fin.

 

fin

3 7 4

 

xmax:= -99;

while not eof (fin) do

begin read (fin,x);

if x>xmax then

xmax:= x;

end;

 

Табличка:

xmax -> x

-99 -> 3

3 -> 7

7 -> 4

7 -> -

 

Для того, чтобы локализовать методом трассировки ошибку, найденную при тестировании, можно сравнить результаты ручного просчета со значениями, получаемыми с помощью компьютера. Это можно сделать двумя способами:

1. Вставка в программу отладочной печати промежуточных данных.

2. Использование средств отладки Турбо Паскаля.

Рассмотрим способ 2. Для того, чтобы провести трассировку программы, надо:

- открыть отладочное окно Watch с помощью опции Debug/Watch;

- записать в отладочное окно имена интересующих переменных: для добавления каждой переменной надо установить опцию Debug/Add Watch (или Ctrl-F7), открывающую окно Add Watch, записать имя переменной и выполнить ОК.

Теперь можно выполнять трассировку, продвигаясь по программе с использованием функциональных клавиш F7, F8, F4 и следя за изменением значений переменных в окне Watch. При каждом нажатии F7 и F8 выполняется одна строка программы, но F8 обходит процедуры. При F4 начинается или продолжается выполнение программы до той строки, на которой стоит курсор.

Для тестирования логики программы используются методы структурного тестирования. Качество структурного тестирования определяется тем, насколько полно проверена логика программы. (метод тестовых счетчиков)

_____________________________________________________________________________________







Дата добавления: 2015-03-11; просмотров: 518. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Образование соседних чисел Фрагмент: Программная задача: показать образование числа 4 и числа 3 друг из друга...

Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Краткая психологическая характеристика возрастных периодов.Первый критический период развития ребенка — период новорожденности Психоаналитики говорят, что это первая травма, которую переживает ребенок, и она настолько сильна, что вся последую­щая жизнь проходит под знаком этой травмы...

Репродуктивное здоровье, как составляющая часть здоровья человека и общества   Репродуктивное здоровье – это состояние полного физического, умственного и социального благополучия при отсутствии заболеваний репродуктивной системы на всех этапах жизни человека...

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

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

Studopedia.info - Студопедия - 2014-2025 год . (0.014 сек.) русская версия | украинская версия