Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

4 семестр / samostoiatelnaia-rabota-29

.pdf
Скачиваний:
0
Добавлен:
16.11.2025
Размер:
238.41 Кб
Скачать

НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ЯДЕРНЫЙ УНИВЕРСИТЕТ «МИФИ» Кафедра информатики и процессов управления (№17)

Дисциплина «Информатика» (основной уровень), 2-й курс, 4-й семестр.

Задание для самостоятельной работы 29

Тема 29: Шаблоны.

Составить программу на языке Си++, в которой описан рациональный набор шаблонов классов для реализации очереди (FIFO) на основе линейного односвязного списка. Шаблоны должны учитывать, что элементами очереди могут быть: целые и вещественные числа, символы, нуль-терминированные строки, указатели на объекты.

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

Реализовано в решении

1

Для шаблонов очереди реализовать две основные операции очереди: добавление

 

и извлечение элементов. Значение извлекаемого элемента должно возвращаться

 

из очереди (например, передаваться в отдельную переменную, не связанную с

 

очередью).

2

Перегрузить операцию "<<" для добавления элементов в очередь.

3

Очередь для целых чисел (типа int) содержит метод для вычисления суммы всех

 

элементов очереди.

4

Очередь для символов (типа char) реализовывать не через линейный

 

односвязный список, а через массив заданного размера, расположенный в

 

динамической памяти. В этом случае размер очереди не может превышать

 

заданный размер массива.

5

В шаблоне очереди для нуль-терминированных строк хранить копии

 

добавляемых в очередь строк, размещаемые в динамической памяти.

 

Нуль-терминированная строка – массив символов, в котором концом строки считается

 

специальный нуль-символ ('\0').

6*

Предусмотреть возможность хранения в очереди указателей на графические

 

объекты, описанные в задании для самостоятельной работы 28.

 

* - для получения максимального балла

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

При выполнении задания запрещено использовать стандартные средства и возможности сторонних библиотек (кроме стандартных математических функций и средств текстового ввода-вывода).

Соседние файлы в папке 4 семестр