- •Билет 1. Базовые понятия пpогpамиpования. Действие, процесс, алгоритм, программа.
- •Билет 2. Функциональная структура эвм. Основные устройства эвм, их функциональные характеристики.
- •Билет 3. Представление данных в памяти эвм. Понятие переменной, константы, типа, диапазона значений.
- •Билет 4. Требования к качеству программного продукта. Основные критерии качества.
- •Билет 5. Этапы разработки программ. Роль каждого этапа в получении качественного программного продукта. Технология программирования.
- •Билет 6. Главная метафора процедурно-ориентированных языков. Стиль программирования.
- •Билет 7. Внешняя спецификация задачи, ее роль в процессе разработки программы. Состав внешней спецификации, структура документа.
- •Билет 8. Состав языка программирования. Синтаксис и семантика языка. Метаязык для записи синтаксических правил.
- •Билет 9. Структурные уровни языка программирования. Уровни языка Паскаль. Особенности языка Паскаль.
- •Билет 10. Простейшие конструкции языка Паскаль. Основные символы, слова, выражения.
- •Билет 11. Элементарные инструкции языков программирования. Особенности кодирования инструкции на язык Паскаль.
- •Билет 12. Кодирование арифметических, логических и литерных инструкций на язык Паскаль.
- •Билет 13. Организация ввода данных из стандартного файла input. Процедуры ввода.
- •Билет 14. Ввод данных из текстового файла в Турбо-среде.
- •Билет 15. Вывод данных в текстовый файл в среде Турбо-Паскаль.
- •Билет 16. Концепция структурного программирования. Принцип Дейкстры.
- •Билет 17. Основные правила композиции структурированных программ. Базисы Вирта и Дейкстры. Эквивалентность базисов.
- •Билет 18. Последовательность действий. Особенность реализации в языке Паскаль.
- •Билет 19. Альтернативные действия. Альтернатива и полуальтернатива. Особенность реализации в языке Паскаль. Синтаксис и семантика.
- •Билет 20. Повторяемые действия. Реализация итерационных циклов пока и до в языке Паскаль. Синтаксис и семантика, особенность реализации.
- •Билет 21. Реализация параметрического цикла в языке Паскаль. Синтаксис и семантика, ограничения при использовании.
- •Билет 22. Выбор из нескольких альтернатив. Реализация в стандартном и Турбо-Паскале.
- •Билет 23. Скалярные типы данных в языке Паскаль. Упорядоченные и неупорядоченные типы.
- •Билет 24. Структурный тип данных "массив". Реализация массивов переменной длины.
- •Билет 25. Правила записи программного модуля.
- •Билет 26. Основные стратегии проектирования алгоритмов, их сравнительная характеристика.
- •Билет 27. Основные декомпозиционные структуры программ. Сегменты-блоки и сегменты-процедуры, их спецификация.
- •Билет 32. Функции. Правила описания и использования.
- •Билет 33. Чистые процедуры. Правила и способы подстановки параметров. Механизм подстановки.
- •Билет 34. Структура программы. Локализация объектов.
- •Билет 35. Побочный эффект. Причины возникновения и правила предупреждения.
- •Билет 36. Цель и содержание отладки программы. Классификация ошибок. Уровни корректности программы в процессе отладки.
- •Билет 37. Основные действия при отладке. Контроль программы. Фазы контроля.
- •Билет 38. Характеристика восходящего и нисходящего способов отладки.
- •Билет 39. Локализация и исправление ошибок в процессе отладки в Турбо-среде.
- •Билет 40. Функциональное и структурное тестирование. Метод тестовых счетчиков.
- •Билет 41. Документирование программ в процессе разработки. Состав документации.
- •Билет 42. Классификация алгоритмов внутренней сортировки. Сравнительная оценка методов сортировки.
- •Билет 43. Эффективность программы. Средства стандартного и Турбо-Паскаля для повышения эффективности.
- •Билет 44. Надежность программы. Организация надежного ввода. Средства Паскаля для повышения надежности.
- •Билет 45. Эргономичность программы. Роль структурного программирования в повышении эргономичности.
- •Билет 46. Мобильность программ. Отличие версии Турбо-Паскаль от стандартного Паскаля.
- •Билет 47. Метод бисекции (деления пополам). Использование его в алгоритмах сортировки и решения уравнений.
- •Билет 48. Способы организации надежного ввода из стандартного файла, влияние на структуру программы.
- •Билет 49. Организация массива из текстового файла. Процедуры, обеспечивающие различную степень зависимости от входных данных.
- •Билет 50. Локализация процедур Паскаля. Внешние процедуры.
- •Билет 51. Структурирование циклов. Метод объединения условий при решении задачи информационного поиска в файле.
- •Билет 59. Метод трассировки при визуальном и компьютерном способах отладки.
Билет 3. Представление данных в памяти эвм. Понятие переменной, константы, типа, диапазона значений.
В алгоритмах и программах данные встречаются в виде констант и переменных.
КОНСТАНТА - это постоянная величина, которая определяется своим значением.
ПЕРЕМЕННАЯ - величина, значение которой может меняться в процессе вычислений.
ПРОГРАММНАЯ ПЕРЕМЕННАЯ - это поименованная, а программная константа - неименованная область памяти, где хранится значение определенного типа. Особенность программных переменных в том, что они всегда имеют конкретные значения и эти значения могут быть многократно изменены в ходе вычислений.
Тип константы определяется формой ее записи. Тип переменной определяется множеством значений, которые она может принимать.
Основными типами, применяемыми в машинных алгоритмах, являются цел, вещ, лог и лит.
Значениями целых переменных являются числа: 0, 1, -1, 2, -2,..., которые в памяти машины представляются точно.
Значениями вещественных переменных являются действительные числа, записываемые в виде десятичных дробей: 0.5, 1.2*10^6. Вещественные числа в памяти представлены с округлением.
Значениями логических переменных являются логические значения: истина (1) и ложь (0).
Значениями литерных переменных являются литеры или цепочки литер из определенных алфавитов - русского, латинского и тп: 'упчк!!!11', 'х='.
При размещении в памяти машины каждой константе и переменной выделяется отдельный участок памяти. Имя переменной является адресом этого участка.
Каждая инструкция программы также занимает участок памяти, длина которого зависит от вида инструкции.
В силу ограниченности участка, где размещаются переменные и константы, невозможно размещение и формирование чисел и литерных цепочек сколь угодно большой величины. Поэтому для каждой вычислительной машины и ЯП сущ. величины максцел - макс целое число, минвещ, максвещ и макслит. Вычисления, результаты которых выходят за пределы этих диапазонов, приводят к возникновению исключительных ситуаций в машине.
Основным свойством этих типов данных является неделимость их значений. Каждое значение есть объект, не распадающийся на компоненты. Такие объекты в памяти машины представлены простыми переменными.
Переменные, состоящие из нескольких компонент, называются структурными переменными. Переменная, имеющая структуру массива, является совокупностью компонент - переменных одного и того же типа. Для обозначения компонент используется имя переменной-массива с индексом, который однозначно указывает желаемый объект.
Билет 4. Требования к качеству программного продукта. Основные критерии качества.
Необходимым условием массового производства и внедрения программных систем является организация промышленного производства этих систем. Следовательно, должна существовать технология программирования, т.е. способ проведения процесса производства программ, обеспечивающий планирование, разработку и сдачу программных систем в срок. К программам должны предъявляться требования как к промышленному продукту, который могут использовать вне организации-разработчика и которому должно быть обеспечено тиражирование, внедрение, обслуживание в эксплуатации и развитие.
К программному продукту предъявляются слудующие требования:
1. Работоспособность - возможность выполнения программы на имеющейся машине.
2. Правильность (корректность) - строгое соответствие результатов, полученных при выполнении программы, требованиям постановки задачи для любых допустимых исходных данных.
3. Надежность - отсутствие отказов при выполнении программы даже для неправильно закодированных или недопустимых данных.
4. Эффективность - минимальность времени получения решения задачи в целом, включая как время выполнения программы, так и время разработки программы и данных, тестирования и отладки.
5. Документированность - наличие инструкции по пользованию и описаний внутренней логики программы.
6. Мобильность - независимость программы от конкретной реализации.
7. Эргономичность - программа позволяет минимизировать усилия пользователя по подготовке исходных данных, обработке данных и оценке полученных результатов.
8. Читабельность - программа должна быть понятной.