
- •4. Подпрограммы в Паскале. Подпрограммы-процедуры и подпрограммы-функции.
- •5. Формальные и фактические параметры подпрограмм Паскаля.
- •6. Формальные параметры подпрограмм Паскаля. Параметры-значения и параметры-переменные.
- •11. Тип массив в Турбо- Паскале (понятие, описание, размещение в памяти эвм).
- •16. Статическое и динамическое распределение памяти. Тип-указатель в Турбо Паскале ( понятие, описание, типизированные и нетипизированные указатели).
- •17. Общие представления об объектно-ориентированном программировании. Тип-объект в Турбо Паскале (понятие, особенности описания).
- •Пример.
- •23. Особенности компиляции Паскаль-программы модульной структуры.
- •24. Основный стандартные модули и их краткая характеристика.
- •28. Отладка программ ( понятие, цель, стадии отладки, основные фазы контроля корректности программ).
- •30. Восходящее и нисходящее тестирование программ.
- •37. Основные типы и структуры данных в Фортране. Объявление типа и структур данных в Фортране.
- •43. Простейший способ ввода-вывода данных на Фортране, управляемого списками ввода-вывода.
- •44. Запись операторов ввода-вывода в Фортране при использовании объявления формата данных.
28. Отладка программ ( понятие, цель, стадии отладки, основные фазы контроля корректности программ).
Отладка – процесс поиска, локализации и устранения ошибок в программе.
Программы содержат ошибки если:
- программа не завершается.
-завершается, но выходные данные не соответствуют тестовым данным.
Отладка плохо-спроектированной программы может занять до 70% времени её разроботки.
Классификация ошибок в программах.
Условно все ошибки в программах можно разделить на синтаксические и логические.
Синтаксические ошибки это все отклонения от формальных правил написания программы на конкретном ЯП.
Логические ошибки в свою очередь разделяются на алгоритмические и семантические.
Алгоритмические ошибки имеют место при несоответствии разработанного алгоритма поставленной задачи, ошибки в записи расчетных формул и ур-ний, ошибки построения БУС.
Ошибки семантические явл-ся следствием неправильного понимания программистом смысла инструкций ЯП или недостаточных представлений об операционной среде ПК и конкретной среде программирования.
Уровни корректности программы
1-ый – отсутствие синтаксических ошибок, определяемых автором визуальным контролем или компилятором ЯП.
2 –ой уровень отсутствие ошибок, автоматически выявляются как при компиляции программы так и при её разовом выполнении на каком-то наборе значений исходных данных.
3-ий уровень получение корректных рез-тов на некотором множестве специально разработанных тестов.
4ый уровень- получение корректных рез-тов на случайном множестве тестов.
5ый уровень- получение корректных рез-тов для всех допустимых наборов значений исходных данных, определяемых внешней спецификацией задачи.
6ой уровень- получение корректных рез-тов или информации об ошибках для любых допустимых значений исходных данных и всех наиболее вероятных искожений этих значений.
7ой уровень- получение корректных рез-тов или информации об ошибках для любого возможного ввода значений исх. Данных.
29. Классификация ошибок в программах. Общие представления об уровнях корректности программы.
Ошибки, которые могут быть в программе, принято делить на три группы:
синтаксические;
ошибки времени выполнения;
алгоритмические.
Синтаксические ошибки, их также называют ошибками времени компиляции (Compile-time error), наиболее легко устранимы. Их обнаруживает компилятор, а программисту остается только внести изменения в текст программы и выполнить повторную компиляцию.
Ошибки времени выполнения тоже, как правило, легко устранимы. Они обычно проявляются уже при первых запусках программы и во время тестирования. При возникновении ошибки в программе, среда разработки прерывает работу.
С алгоритмическими ошибками дело обстоит иначе. Компиляция программы, в которой есть алгоритмическая ошибка, завершается успешно. При пробных запусках программа ведет себя нормально, однако при анализе результата выясняется, что он неверный. Для того чтобы устранить алгоритмическую ошибку, приходится анализировать алгоритм, вручную "прокручивать" его выполнение.
Контроль корректности программы.
Визуальный. Осуществляется путем просмотра текста программы, дополнительный анализ алгоритма, с целью исправления сомнительных конструкций и ситуаций. Поэтому такой контроль и проводится по некоторому перечню шаблонов.
Синтаксический контроль. Задачей является проверка текста программы на компиляторе для исправления синтаксических ошибок программы.
Контроль ограничений структурного программирования. Контроль структурности программы предполагает проверку правильности построения, а так же выполнения правил структурированного программирования ( рельефность записей, компактность, выбор имен переменных и т.д.). Обычно объединяют с визуальным контролем.
Семантический контроль.
Задачей семантического контроля явл-ся проверка правильности применения синтаксически корректных конструкций ЯП.
Отсутствует ли в программе изменения значения переменных на условие завершение цикла «пока» или «до».