Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
yap.doc
Скачиваний:
2
Добавлен:
19.08.2019
Размер:
4.9 Mб
Скачать

7. Описать класс «множество целых чисел» на основе одномерного

динамического массива.

Обязательные поля класса:

  • Максимальный размер множества

  • Указатель на int - хранит адрес динамически выделенной памяти для размещения множества;

  • Число элементов.

Обязательные методы:

  • Конструктор без параметров

  • Конструктор с параметром – Макс. размер множества;

  • Конструктор копирования

  • Добавить элемент

  • Удалить элемент

  • Вывести множество на печать

  • Деструктор

Перегрузить следующие операции:

  • Операция (+) - объединение

  • Операция (*) - пересечение

  • Операция (-) – разность множеств

Написать демонстрационную программу. Меню программы должно обеспечить проверку всех методов и перегруженных операций.

8. Реализовать класс «Матрица целых размера m x n» на основе одномерного динамического массива.

Обязательные поля класса:

  • Размеры матрицы m, n

  • Адрес динамически выделенной памяти для размещения матрицы;

Обязательные методы:

  • Конструктор без параметров

  • Конструктор с параметрами M,N;

  • Конструктор копирования

  • Вывести матрицу на печать

  • получить размеры матрицы;

  • получить элемент с заданными координатами;

  • изменить элемент с заданными координатами;

  • прибавить заданную матрицу;

  • умножить на заданную матрицу;

  • умножить на константу;

  • Деструктор.

Написать демонстрационную программу. Меню программы должно обеспечить проверку всех методов и перегруженных операций.

9. Реализовать класс "Односвязный список символов". Класс должен

включать в себя методы:

  • стандартные методы списка

  • получение длины списка

  • вставить символ после i-го

  • удалить i-й символ

  • удалить первое вхождение заданного символа

Перегрузить операции:

  • Операция ++ – переход на следующий элемент списка;

  • Операция -- – переход на предыдущий элемент списка;

Написать демонстрационную программу. Меню программы должно обеспечить проверку всех методов и перегруженных операций.

10. Создать класс «СТРОКА».

Обязательные поля класса:

  • Указатель на char - хранит адрес динамически выделенной памяти для размещения символов строки;

  • Значение int – хранит длину строки в байтах.

Обязательные методы:

  • Конструктор без параметров

  • Конструктор с параметром С-строка (char *)

  • Конструктор копирования

  • Получение длины строки

  • Очистка строки (сделать строку пустой)

  • Деструктор

Перегрузить операции:

  • Операция + конкатенция 2-х строк;

  • Операция = присваивания;

  • Преобразование в целое число (аналогично atoi(char*)).

Написать демонстрационную программу. Меню программы должно обеспечить проверку всех методов и перегруженных операций.

11. Реализуйте класс «Одномерный динамический массив целых чисел» с методами:

  • Конструктор по умолчанию

  • Конструктор с параметром – Размер массива

  • Конструктор копирования

  • Вывести массив на печать

  • Деструктор

Длина массива определяется во время инициализации и в дальнейшем не меняется.

Перегрузить

  • Операция [] – доступ к символу строки по индексу.

На базе этого класса реализовать производный класс «Стек целых чисел» с методами:

  • Поместить (PUSH) элемент в вершину стека

  • Извлечь (POP) элемент из вершины стека

Примечание: Программа должна демонстрировать работу с классом «Одномерный динамический массив целых чисел» и с классом «Стек целых чисел».

12. Реализуйте класс «Одномерный динамический массив целых чисел» с методами:

  • Конструктор по умолчанию

  • Конструктор с параметром – Размер массива

  • Вывести массив на печать

  • Деструктор

Длина массива определяется во время инициализации и в дальнейшем не меняется.

Перегрузить

  • Операция [] – доступ к символу строки по индексу.

На базе этого класса реализовать производный класс «Циклическая очередь» с методами:

  • Добавить элемент в конец очереди

  • Извлечь элемент из начала очереди

Примечание: Программа должна демонстрировать работу с классом «Одномерный динамический массив целых чисел» и с классом «Очередь».

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