Главная страница
Навигация по странице:

  • Варианты 1-10 В табл. 1 и 2 перечислены возможные типы объектов и возможные дополни­тельные операции над нимиТаблица 1

  • Таблица 2.

  • Операция (метод) Описание

  • Вариант Т1 T2 Операции (методы)

  • Варианты 11-20 В табл. 4 и 5 перечислены возможные типы объектов и возможные дополни­тельные операции над ними. Таблица 4.

  • Класс Объект

  • Операция (метод) Описание

  • Вариант Т1 T2

  • Лабораторная работа по С №2 УлГУ. Лабораторная работа 2. Лабораторная работа Общая часть заданий для вариантов 120


    Скачать 30.58 Kb.
    НазваниеЛабораторная работа Общая часть заданий для вариантов 120
    АнкорЛабораторная работа по С №2 УлГУ
    Дата07.05.2021
    Размер30.58 Kb.
    Формат файлаdocx
    Имя файлаЛабораторная работа 2.docx
    ТипЛабораторная работа
    #202450

    Лабораторная работа 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

    Вариант

    Т1

    T2

    Операции (методы)




    SymbString

    BinString

    ShowOct(), ShowDec(),ShowHex()

    2

    SymbString

    BinString

    operator +(T&, T&)

    з

    SymbString

    BinString

    operator -(T&, T&)

    4

    SymbString

    OctString

    operator +(T&, T&)

    5

    SymbString

    OctString

    operator -(T&, T&)

    6

    SymbString

    DecString

    ShowBin(), ShowOct(), ShowHex()

    4

    SymbString

    DecString

    operator +(T&, T&)

    6

    SymbString

    DecString

    operator -(T&, T&)

    9

    SymbString

    HexString

    operator +(T&, T&)

    10

    SymbString

    HexString

    operator -(T&, T&)

    Варианты_11-20__В_табл._4_и_5_перечислены_возможные_типы_объектов_и_возможные_дополни­тельные_операции_над_ними._Таблица_4.'>Варианты 11-20

    В табл. 4 и 5 перечислены возможные типы объектов и возможные дополни­тельные операции над ними.

    Таблица 4. Перечень типов объектов

    Класс

    Объект

    Triangle

    Треугольник

    Quadrate

    Квадрат

    Rectangle

    Прямоугольник

    Tetragon

    Четырехугольник

    Pentagon

    Пятиугольник


    Таблица 5. Перечень дополнительных операций (методов)

    Операция (метод)

    Описание

    MoveO

    Переместить объект на плоскости

    Compare(Т& оb1, T& ob2)

    Сравнить объекты оb1 и оb2 по площади

    IsIntersect(T& ob1, T& ob2)

    Определить факт пересечения объектов оb1 и оb2




    (есть пересечение или нет)

    IsInclude(T& оb1, T& ob2)

    Определить факт включения объекта оb2 в объект оb1

    Таблица 6 содержит спецификации вариантов. Таблица 6. Спецификации вариантов 11-20

    Вариант

    Т1

    T2

    Операции (методы)

    11

    Triangle

    Quadrate

    Move().

    Compare(T&, T&)

    12

    Quadrate

    Pentagon

    Move().

    IsIntersect(T&, T&)

    13

    Triangle

    Rectangle

    Move().

    Compare(T&, T&)

    14

    Triangle

    Rectangle

    Move().

    IsIntersect(T&, T&)

    15

    Rectangle

    Pentagon

    Move().

    IsInclude(T&, T&)

    16

    Triangle

    Tetragon

    Move().

    Compare(T&, T&)

    17

    Triangle

    Tetragon

    Move(),

    IsIntersect(T&, T&)

    18

    Triangle

    Tetragon

    Move().

    IsInclude(T&, T&)

    19

    Triangle

    Pentagon

    Move().

    Compare(T&, T&)

    20

    Triangle

    Pentagon

    Move().

    IsIntersect(T&, T&)


    написать администратору сайта