- •Основы алгоритмизации Понятие алгоритма
- •Словесная запись алгоритмов
- •Технология разработки алгоритмов
- •Структуры алгоритмов Алгоритмы линейной структуры Ветвления
- •Системы программирования Это комплекс средств для разработки программ:
- •Типы языков программирования
- •Среди 1. – можно выделить 3 направления
- •История создания языка Паскаль 1970 год.
- •2011 Год rad Studio xe2 – новая среда разработки
- •2012 Год Embarcadero® rad Studio xe3
- •Способы и средства отладки
- •Отладка программ в среде Delphi
- •Точки контрольного останова
- •Окно наблюдения
- •Принудительное прерывание работы программы
- •Трассировка программы
Способы и средства отладки
В ходе отладки программа должна быть проверена в двух измерениях: в пространстве и во времени.
Первое представляет собой контроль содержимого памяти в конкретные моменты работы программы, отслеживание текущих значений всех или выбранных групп переменных, проверку на соответствие их значений декларированным диапазонам (типам).
Второе – это отслеживание хода выполнения алгоритма для проверки правильности заданной последовательности операций и передач управления при различных значениях параметров.
Самым распространенным и полезным приемом отладки, позволяющим объединить обе формы контроля, являются отчеты о трассировке. Трассировка программы – это регистрация логического пути выполнения программы – последовательности выполнения ее операторов/блоков с контрольной выдачей информации о результатах каждого шага – обо всех изменениях значений рабочих переменных и параметров связи. Сам принцип трассировки – слишком общий. На практике реализуют трассировку программы в том или ином объеме, используя различные способы и средства отладки.
Самый простой способ отладки – это расстановка в тексте программы отладочных печатей промежуточных результатов вычислений, позволяющих проследить логический и арифметический следы программы, т. е. каким образом она выполнялась и что она вычисляла. Отладочные печати ставятся в узловых/ключевых точках программы, позволяющих контролировать ошибки ввода (эхо-печать введенных данных), результаты вычислительных операций и логику работы программы или отдельных ее частей.
Процесс отладки значительно облегчается, если использовать для этого системные средства отладки – специальные программы-отладчики, имеющиеся в программном обеспечении компьютера.
Встроенный отладчик среды Delphi или Турбо Паскаля (Debugger) позволяет контролировать ход выполнения программы – выполнять трассировку программы без изменения самой программы с помощью следующих действий:
выполнения программы построчно/по шагам;
остановки выполнения программы в заданной точке останова;
перезапуска программы, не закончив ее выполнение;
назначения и модификации значений любых переменных и параметров программы, а также получения некоторых дополнительных сведений о программе, например списка активных процедур.
Эти возможности позволяют, отследив выполнение каждого оператора/операции, определить местоположение ошибки и понять ее причину.
Отладка программ в среде Delphi
(для программирующих в Delphi)
В Delphi имеется мощный встроенный отладчик, значительно упрощающий отладку программ. Основными инструментами отладки являются точки контрольного останова и окно наблюдения за переменными.
Точки контрольного останова
Точка контрольного останова определяет оператор в программе, перед выполнением которого программа прервет свою работу, и управление будет передано среде Delphi. Точка останова задается с помощью опции View|Debug windows|Breakponts.
Окно точек останова содержит список всех установленных в проекте точек, перед выполнением которых происходит прекращение работы программы и управление получает среда Delphi.
Для добавления новой точки следует щелкнуть по окну правой кнопкой мыши и выбрать опцию Add. В этом случае появляется окно, с помощью которого можно указать положение добавляемой точки:
FileName – определяет имя файла;
Line number – номер строки от начала файла (в момент появления окна оно содержит файл и строку с текстовым курсором);
Condition – можно указать условие останова в виде логического выражения (например, MyValue = Мах-Value-12);
Pass count – количество проходов программы через контрольную точку без прерывания вычислений.
Окно точек останова (слева) и окно добавления новой точки (справа)