Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР_1.doc
Скачиваний:
3
Добавлен:
27.09.2019
Размер:
93.18 Кб
Скачать

В.В. Лаптев Объектно-ориентированное программирование

Лабораторная работа 1. Тема: Структура-пара

Цель: Входной контроль знаний студентов, знакомство с основными понятиями объектно-ориентированного подхода к программированию.

Количество часов: 2

Теоретические сведения, необходимые для выполнения работы

Литература

  1. Лаптев В.В. C++. Объектно-ориентированное программирование: Учебное пособие. – СПб.: Питер, 2008 – 464 с.: ил.

Глава 1 (стр. 16-41)

  1. Лаптев В.В., Морозов А.В., Бокова А.В. C++. Объектно-ориентированное программирование. Задачи и упражнения. – СПб.: Питер, 2007 – 288 с.: ил.

Глава 1 (стр. 11-18)

Порядок выполнения работы

  1. Ознакомиться с теоретическим материалом.

  2. Ответить на контрольные вопросы (см. [1], стр. 42).

  3. Получить у преподавателя вариант задания.

  4. Реализовать задание своего варианта в соответствии с поставленными требованиями.

  5. Подготовить тестовые наборы данных

  6. Отчитаться по выполненной работе путём демонстрации работающей программы на тестовых наборах данных (как подготовленных самостоятельно, так и предложенных преподавателем) и ответов на вопросы преподавателя (как из числа контрольных, так и по реализации программы).

  7. Привести в порядок рабочее место.

Требования к программе:

Структурой-парой называется структура с двумя полями, которые обычно имеют имена first и second. Требуется реализовать новый тип данных с помощью такой структуры. Во всех заданиях обязательно должны присутствовать:

  • метод, указанный в варианте задания;

  • метод инициализации полей Init; метод должен контролировать корректность аргументов;

  • ввод с клавиатуры Read; для контроля корректности вводимых данных вызывать метод Init;

  • вывод на экран Display.

Метод Init и метод по варианту задания реализовать внутри структуры; методы Read и Display – вне структуры.

Реализовать внешнюю функцию с именем make_тип(), где тип – тип реализуемой структуры. Функция должна получать в качестве аргументов значения для полей структуры и возвращать структуру требуемого типа. Для контроля корректности параметров вызывать метод Init. При передаче ошибочных параметров следует выводить сообщение и заканчивать работу (с помощью механизма исключений).

Для демонстрации работы с объектами нового типа во всех заданиях требуется написать главную функцию. В программе обязательно должны быть продемонстрированы различные способы создания объектов и массивов объектов (локальный, динамический, массив объектов, динамический массив объектов). Программа должна демонстрировать использование всех функций и методов. Программа должна выводить на экран размер класса в режиме #pragma pack(1) и без него.

При трансляции программы не должно выводиться никаких предупреждений (warning).

При запуске программы должны отображаться сведения о разработчике и условия задачи.

Критерии оценивания работы:

В таблице приведены критерии, по которым студент может оценить свою работу.

Критерии

Процент

Объявлена структура с полями first и second

5

Реализованы метод Display в соответствии с требованиями

5

Реализованы метод Read в соответствии с требованиями

10

Реализованы метод Init в соответствии с требованиями

10

Реализован метод варианта в соответствии с требованиями

10

Реализована функция make_тип() в соответствии с требованиями

10

Подготовлен полный набор тестовых данных для проверки работы программы

15

В главной функции созданы все виды объектов, перечисленные в требованиях

15

В главной функции продемонстрирована работа всех функций и методов

15

Продемонстрированы размеры объектов в режиме #pragma pack(1) и без него

5

Наличие предупреждений при трансляции, или отсутствие сведений о разработчике, или условий задания снижает итоговую оценку на 20%

Итого

100 %

Вопрос для размышления: Каков процент выполнения программы для варианта 0?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]