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

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

Лабораторная работа № 2. Тема: Структура-класс с внешними функциями

Цель: закрепление первичных навыков создания классов.

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

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

Литература

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

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

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

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

  1. Лафоре Р. Объектно-ориентированное программирование в C++. Классика Computer Science. 4-е изд. – СПб.: Питер, 2003 – 928 с.: ил.

Глава 1 (стр. 32-46)

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

  1. Повторить изученный ранее теоретический материал, прочитать [3].

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

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

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

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

  6. Оценить свою работу в соответствии с критериями.

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

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

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

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

Во всех заданиях, помимо указанных в задании операций, обязательно должны быть реализованы следующие методы:

  • метод инициализации Init;

  • ввод с клавиатуры Read;

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

  • преобразование в строку toString.

Методы Init и toString реализовать внутри структуры; методы Read и Display – вне структуры. В классе должно быть реализовано не менее двух методов Init: один метод принимает в качестве параметров данные для полей, второй – объект своего класса.

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

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

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

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

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

Критерии

Процент

Объявлена структура с необходимым и достаточным количеством полей наиболее подходящих по смыслу задачи типов

5

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

5

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

10

Реализованы все функции варианта в соответствии с требованиями

20

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

20

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

15

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

20

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

5

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

Итого

100 %

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

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