Лабораторная работа по С №2 УлГУ. Лабораторная работа 2. Лабораторная работа Общая часть заданий для вариантов 120
Скачать 30.58 Kb.
|
Лабораторная работа 2. Общая часть заданий для вариантов 1-20 Написать программу, демонстрирующую работу с объектами двух типов: Т1 и Т2, для чего создать систему соответствующих классов. Каждый объект должен иметь идентификатор (в виде произвольной строки символов) и одно или несколько полей для хранения состояния (текущего значения) объекта. Клиенту (функции main) должны быть доступны следующие основные операции (методы): создать объект, удалить объект, показать значение объекта и прочие дополнительные операции (зависят от варианта). Операции по созданию и удалению объектов инкапсулировать в классе Factory. Предусмотреть меню, позволяющее продемонстрировать заданные операции. При необходимости в разрабатываемые классы добавляются дополнительные методы (например, конструктор копирования, операция присваивания и т. п.) для обеспечения надлежащего функционирования этих классов. Варианты 1-10 В табл. 1 и 2 перечислены возможные типы объектов и возможные дополнительные операции над ними Таблица 1. Перечень типов объектов Класс Объект SymbString Символьная строка (произвольная строка символов) BinString Двоичная строка (изображение двоичного числа) OctString Восьмеричная строка (изображение восьмеричного числа) DecString Десятичная строка (изображение десятичного числа) HexString Шестнадцатеричная строка (изображение шестнадцатеричного числа) Таблица 2. Перечень дополнительных операций (методов) Операция (метод) Описание ShowBinO Показать изображение двоичного значения объекта ShowOctO Показать изображение восьмеричного значения объекта ShowDec () Показать изображение десятичного значения объекта ShowHexO Показать изображение шестнадцатеричного значения объект operator +(Т& s1, Т& s2) Для объектов SymbString — конкатенация строк s1 и s2; для объектов прочих классов — сложение соответствующие численных значений с последующим преобразованием к типу T. Операция (метод) Описание operator –(Т& s1, Т& s2) Для объектов SymbString — если s2 содержится как подстрока в s1, то результатом является строка, полученная из s1 удалением подстроки s2; в противном случае возвращается значение s1; для объектов прочих классов — вычитание соответствующих численных значений с последующим преобразованием к типу Т Примечание: Первые четыре операции могут применяться к объектам любых классов, за исключением класса SymbString. Таблица 2.3 содержит спецификации вариантов. Таблица 3. Спецификации вариантов 1-10
Варианты_11-20__В_табл._4_и_5_перечислены_возможные_типы_объектов_и_возможные_дополнительные_операции_над_ними._Таблица_4.'>Варианты 11-20 В табл. 4 и 5 перечислены возможные типы объектов и возможные дополнительные операции над ними. Таблица 4. Перечень типов объектов
Таблица 5. Перечень дополнительных операций (методов)
Таблица 6 содержит спецификации вариантов. Таблица 6. Спецификации вариантов 11-20
|