Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Примеры задач к экзамену по дисциплине «Объектно-ориентированное программирование»


 

Задача 105.

 

На языке Delphi разработать контейнер «динамический массив» — TArray, который

- содержит элементы типа Pointer,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с массивом (вставка по индексу, удаление по индексу, очистка, копирование в другой массив, поиск индекса элемента по ссылке, сортировка),

- при обращении к элементу массива проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.


 

Задача 106.

 

На языке Delphi разработать контейнер «коллекция» — TCollection, который:

- содержит элементы типа TCollectionItem, содержащие ссылку на своего владельца,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с коллекцией (вставка, удаление, очистка, копирование в другую коллекцию, поиск индекса элемента по ссылке, сортировка),

- предоставляет типовые события, происходящие при работе с коллекцией (вставка, удаление, очистка),

- при обращении к элементу коллекции проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.


 

Задача 107.

 

На языке Delphi разработать контейнер «список» — TList, который:

- содержит элементы типа Pointer,

- предоставляет типовые свойства (первый элемент, следующий элемент),

- предоставляет типовые процедуры, применяемые при работе со списком (вставка элемента, удаление элемента, очистка списка, замена элемента, перемещение списка в другой список),

- предоставляет типовые события, происходящие при работе со списком (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 108.

 

На языке Delphi разработать контейнер «стек» — TStack, который эмулирует стек процессора, и который:

- содержит произвольные данные, представляемые в виде последовательности байтов,

- предоставляет типовые свойства (указатель на вершину стека, указатель на начало «кадра», указатель на дно стека),

- предоставляет типовые процедуры, применяемые при работе со стеком (создание нового «кадра», выталкивание «кадра», загрузка данных заданного размера, выталкивание данных заданного размера),

- предоставляет типовые события, происходящие при работе со стеком (загрузка в стек, выталкивание из стека),

Продемонстрировать использование класса.


 

Задача 109.

 

На языке Delphi разработать класс «словарь» — TDictionary, который представляет собой набор ключей и их значений, и который:

- содержит ключи типа string и значения типа Pointer,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (количество ключей и значений, признак сортированного «словаря»),

- предоставляет типовые процедуры (вставка ключа и значения, удаление значения по ключу, поиск значения по ключу, очистка, сортировка),

- предоставляет типовые события, происходящие при работе со «словарем» (вставка, удаление, очистка).

Продемонстрировать использование класса.


 

Задача 110.

 

На языке Delphi разработать класс «XML-дерево» — TXmlTree — для представления XML-файла в памяти. Класс:

- содержит список тегов и значений типа string, а также список вложенных деревьев типа TXmlTree,

- обеспечивает загрузку и выгрузку XML-файла (без детализации),

- предоставляет типовые свойства (количество ключей и значений, количество вложенных деревьев),

- предоставляет типовые процедуры (вставка ключа и значения в заданную позицию, удаление значения по ключу, поиск значения по ключу или на основе «пути» по аналогии с файловой системой, очистка),

- предоставляет типовые события, происходящие при работе с контейнером (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 111.

 

На языке Delphi разработать абстракцию файла TAbstractFile и два производных класса TOSFile (файл операционной системы) и TMemoryFile (файл в памяти). Классы:

- предоставляют типовые свойства (размер файла, текущая позиция указателя чтения-записи в файле),

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

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

Продемонстрировать использование классов так: программно создать файл на диске с любым содержимым, скопировать содержимое файла на диске в файл в памяти.


 

Задача 112.

 

На языке Delphi разработать контейнер «битовый массив» — TBitArray, который

- содержит элементы типа Boolean так, что на каждый отводится лишь 1 бит,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с массивом (чтение и запись бита по индексу, расширение массива),

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

Продемонстрировать использование класса.


 

Задача 113.

 

На языке Delphi разработать класс для представления матрицы произвольной размерности – TMatrix. Класс:

- содержит элементы типа Double,

- принимает размеры матрицы на вход конструктора,

- предоставляет типовые свойства (размеры матрицы, элемент на пересечении строки и столбца),

- предоставляет типовые процедуры, применяемые при работе с матрицами (умножение, транспонирование),

Продемонстрировать использование класса.


 

Задача 114.

 

На языке Delphi разработать класс «кольцевой буфер» - TCircularBuffer. Класс:

- содержит байты данных,

- предоставляет типовые свойства (указатель чтения, указатель записи, количество данных в буфере),

- предоставляет типовые процедуры, применяемые при работе с кольцевым буфером (запись, чтение, наращивание размера буфера),

- генерирует исключительную ситуацию при переполнении буфера.

Продемонстрировать использование класса.


 

Задача 115.

 

На языке C++ разработать шаблон «динамический массив» — TArray, который

- содержит элементы заданного типа данных,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с массивом (вставка по индексу, удаление по индексу, очистка, копирование в другой массив, поиск индекса элемента по ссылке, сортировка),

- при обращении к элементу массива проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.


 

Задача 116.

 

На языке C++ разработать класс «коллекция» — TCollection, который:

- содержит элементы типа TCollectionItem, содержащие ссылку на своего владельца,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с коллекцией (вставка, удаление, очистка, копирование в другую коллекцию, поиск индекса элемента по ссылке, сортировка),

- предоставляет типовые события, происходящие при работе с коллекцией (вставка, удаление, очистка),

- при обращении к элементу коллекции проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.


 

Задача 117.

 

На языке C++ разработать шаблон списка — TList, который:

- содержит элементы заданного типа данных,

- предоставляет типовые свойства (первый элемент, следующий элемент),

- предоставляет типовые процедуры, применяемые при работе со списком (вставка элемента, удаление элемента, очистка списка, замена элемента, перемещение списка в другой список),

- предоставляет типовые события, происходящие при работе со списком (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 118.

 

На языке C++ разработать шаблон стека — TStack, который:

- содержит элементы заданного типа данных,

- предоставляет типовые свойства (указатель на вершину стека, указатель на дно стека),

- предоставляет типовые процедуры, применяемые при работе со стеком (загрузка элемента на стек, выталкивание элемента из стека, очистка стека),

- предоставляет типовые события, происходящие при работе со стеком (загрузка в стек, выталкивание из стека),

Продемонстрировать использование класса.


 

Задача 119.

 

На языке C++ разработать шаблон «словарь» — TDictionary, который представляет собой набор ключей и их значений, и который:

- содержит ключи типа string и значения заданного в шаблоне типа данных,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (количество ключей и значений, признак сортированного «словаря»),

- предоставляет типовые процедуры (вставка ключа и значения, удаление значения по ключу, поиск значения по ключу, очистка, сортировка),

- предоставляет типовые события, происходящие при работе со «словарем» (вставка, удаление, очистка).

Продемонстрировать использование класса.


 

Задача 120.

 

На языке C++ разработать класс «XML-дерево» — TXmlTree — для представления XML-файла в памяти. Класс:

- содержит список тегов и значений типа string, а также список вложенных деревьев типа TXmlTree,

- обеспечивает загрузку и выгрузку XML-файла (без детализации),

- предоставляет типовые свойства (количество ключей и значений, количество вложенных деревьев),

- предоставляет типовые процедуры (вставка ключа и значения в заданную позицию, удаление значения по ключу, поиск значения по ключу или на основе «пути» по аналогии с файловой системой, очистка),

- предоставляет типовые события, происходящие при работе с контейнером (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 121.

 

На языке C++ разработать абстракцию файла TAbstractFile и два производных класса TOSFile (файл операционной системы) и TMemoryFile (файл в памяти). Классы:

- предоставляют типовые свойства (размер файла, текущая позиция указателя чтения-записи в файле),

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

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

Продемонстрировать использование классов так: программно создать файл на диске с любым содержимым, скопировать содержимое файла на диске в файл в памяти.


 

Задача 122.

 

На языке C++ разработать контейнер «битовый массив» — TBitArray, который

- содержит элементы типа Boolean так, что на каждый отводится лишь 1 бит,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с массивом (чтение и запись бита по индексу, расширение массива),

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

Продемонстрировать использование класса.


 

Задача 123.

 

На языке C++ разработать класс для представления матрицы произвольной размерности – TMatrix. Класс:

- содержит элементы типа double,

- принимает размеры матрицы на вход конструктора,

- предоставляет типовые свойства (размеры матрицы, элемент на пересечении строки и столбца),

- предоставляет типовые процедуры, применяемые при работе с матрицами (умножение, транспонирование),

Продемонстрировать использование класса.


 

Задача 124.

 

На языке C++ разработать класс «кольцевой буфер» - TCircularBuffer. Класс:

- содержит байты данных,

- предоставляет типовые свойства (указатель чтения, указатель записи, количество данных в буфере),

- предоставляет типовые процедуры, применяемые при работе с кольцевым буфером (запись, чтение, наращивание размера буфера),

- генерирует исключительную ситуацию при переполнении буфера.

Продемонстрировать использование класса.


 

Задача 125.

 

На языке C# разработать контейнер «динамический массив» — TArray, который

- содержит элементы типа Object,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с массивом (вставка по индексу, удаление по индексу, очистка, копирование в другой массив, поиск индекса элемента по ссылке, сортировка),

- при обращении к элементу массива проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.


 

Задача 126.

 

На языке C# разработать контейнер «коллекция» — TCollection, который:

- содержит элементы типа TCollectionItem, содержащие ссылку на своего владельца,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с коллекцией (вставка, удаление, очистка, копирование в другую коллекцию, поиск индекса элемента по ссылке, сортировка),

- предоставляет типовые события, происходящие при работе с коллекцией (вставка, удаление, очистка),

- при обращении к элементу коллекции проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.


 

Задача 127.

 

На языке C# разработать контейнер «список» — TList, который:

- содержит элементы типа Object,

- предоставляет типовые свойства (первый элемент, следующий элемент),

- предоставляет типовые процедуры, применяемые при работе со списком (вставка элемента, удаление элемента, очистка списка, замена элемента, перемещение списка в другой список),

- предоставляет типовые события, происходящие при работе со списком (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 128.

 

На языке C# разработать шаблон «словарь» — TDictionary, который представляет собой набор ключей и их значений, и который:

- содержит ключи типа string и значения заданного в шаблоне типа данных,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (количество ключей и значений, признак сортированного «словаря»),

- предоставляет типовые процедуры (вставка ключа и значения, удаление значения по ключу, поиск значения по ключу, очистка, сортировка),

- предоставляет типовые события, происходящие при работе со «словарем» (вставка, удаление, очистка).

Продемонстрировать использование класса.


 

Задача 129.

 

На языке C# разработать класс для представления матрицы произвольной размерности – TMatrix. Класс:

- содержит элементы типа double,

- принимает размеры матрицы на вход конструктора,

- предоставляет типовые свойства (размеры матрицы, элемент на пересечении строки и столбца),

- предоставляет типовые процедуры, применяемые при работе с матрицами (умножение, транспонирование),

Продемонстрировать использование класса.


 

Задача 130.

 

На языке C# разработать абстракцию файла TAbstractFile и два производных класса TOSFile (файл операционной системы) и TMemoryFile (файл в памяти). Классы:

- предоставляют типовые свойства (размер файла, текущая позиция указателя чтения-записи в файле),

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

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

Продемонстрировать использование классов так: программно создать файл на диске с любым содержимым, скопировать содержимое файла на диске в файл в памяти.


 

Задача 131.

 

На языке C# разработать шаблон стека — TStack, который:

- содержит элементы заданного типа данных,

- предоставляет типовые свойства (указатель на вершину стека, указатель на дно стека),

- предоставляет типовые процедуры, применяемые при работе со стеком (загрузка элемента на стек, выталкивание элемента из стека, очистка стека),

- предоставляет типовые события, происходящие при работе со стеком (загрузка в стек, выталкивание из стека),

Продемонстрировать использование класса.


 

Задача 132.

 

На языке C# разработать шаблон списка — TList, который:

- содержит элементы заданного типа данных,

- предоставляет типовые свойства (первый элемент, следующий элемент),

- предоставляет типовые процедуры, применяемые при работе со списком (вставка элемента, удаление элемента, очистка списка, замена элемента, перемещение списка в другой список),

- предоставляет типовые события, происходящие при работе со списком (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 133.

 

На языке C# разработать класс «XML-дерево» — TXmlTree — для представления XML-файла в памяти. Класс:

- содержит список тегов и значений типа string, а также список вложенных деревьев типа TXmlTree,

- обеспечивает загрузку и выгрузку XML-файла (без детализации),

- предоставляет типовые свойства (количество ключей и значений, количество вложенных деревьев),

- предоставляет типовые процедуры (вставка ключа и значения в заданную позицию, удаление значения по ключу, поиск значения по ключу или на основе «пути» по аналогии с файловой системой, очистка),

- предоставляет типовые события, происходящие при работе с контейнером (вставка, удаление, очистка),

Продемонстрировать использование класса.


 

Задача 134.

 

На языке C# разработать шаблон контейнера «динамический массив» — TArray, который

- содержит элементы заданного типа,

- увеличивает свой размер при добавлении в него элементов,

- предоставляет типовые свойства (текущее количество элементов, количество зарезервированных элементов),

- предоставляет типовые процедуры, применяемые при работе с массивом (вставка по индексу, удаление по индексу, очистка, копирование в другой массив, поиск индекса элемента по ссылке, сортировка),

- при обращении к элементу массива проверяет, что индекс находится в допустимых пределах.

Продемонстрировать использование класса.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...