TDinSpisok = class // Тип динамического списка
public
procedure CreateSpisok; // Создание пустого списка
procedure Insert(item:TSpisokItem); // Добавление эл-та в список
procedure Delete(Num:integer); // Удаление эл-та из списка
function FindItem(stack:TStack):pSpisokItem;// Поиск заданного эл-та
function GetItem(Num:integer):TSpisokItem; // Получить эл-т номер
function LoadSpisokFromFile(name:filename):boolean;
function SaveSpisokToFile (name:filename):boolean;
end;
TDinItem = class // Тип эл-та динам. списка
public
private
end;
TStack = class // Класс стека
private
mass : array[1..StackMaxLen] of integer; // Массив для реализации статического стека
sp : integer; // Указатель на первый элемент в массиве
function pGetItemCount : integer;
function pIsEmpty : boolean;
function pIsFull : boolean;
public
constructor Create();
procedure Push(val : integer);
function Pop() : integer;
property IsEmpty : boolean read pIsEmpty;
property IsFull : boolean read pIsFull;
property GetItemCount : integer read pGetItemCount;
end;
Динамический список статических стеков
Вот поставили мне чисто теоретическую задачку.
Цель работы: разработка набора взаимосвязанных классов для реализации структуры данных
«Динамический список статических стеков» как специализированного контейнера для хранения информационных объектов.
Самое интересное что всего классов должно быть 4, а у меня более 3 классов в этой задачи не получается раздуть. Если бы задача была практическая вообще бы сделал в 2 класса.
Что я делаю неправильно?
Вот описание классов которые у меня получились.
Код:
А вот полное задание
Код:
Цель работы: разработка набора взаимосвязанных классов для реализации структуры данных
«Динамический список статических стеков» как специализированного контейнера для хранения информационных объектов.
Требования к работе:
1. Каждый элемент структуры и сами структуры в целом описываются своими классами со всеми необходимыми свойствами и методами
2. Информационное наполнение каждого элемента структуры описывается в виде класса, содержащего 2-3 свойства и минимально необходимый набор методов
(конструктор и методы доступа к свойствам)
3. Доступ к свойствам классов производится только с помощью открытых интерфейсных методов
4. Набор методов должен обеспечивать все необходимые операции: добавление и удаление элементов, поиск и просмотр, сохранение в файле и загрузка из файла
5. Классы должны взаимодействовать друг с другом на принципах композиции
6. Библиотека классов оформляется в виде отдельного модуля
7. Для проверки работоспособности библиотеки классов создать демонстрационную программу с поддержкой оконного пользовательского интерфейса
8. Для отработки возможных ошибок времени выполнения использовать механизм исключений (exception)
9. Язык программирования и среда разработки: Delphi, Java, C# .NET (по выбору)
«Динамический список статических стеков» как специализированного контейнера для хранения информационных объектов.
Требования к работе:
1. Каждый элемент структуры и сами структуры в целом описываются своими классами со всеми необходимыми свойствами и методами
2. Информационное наполнение каждого элемента структуры описывается в виде класса, содержащего 2-3 свойства и минимально необходимый набор методов
(конструктор и методы доступа к свойствам)
3. Доступ к свойствам классов производится только с помощью открытых интерфейсных методов
4. Набор методов должен обеспечивать все необходимые операции: добавление и удаление элементов, поиск и просмотр, сохранение в файле и загрузка из файла
5. Классы должны взаимодействовать друг с другом на принципах композиции
6. Библиотека классов оформляется в виде отдельного модуля
7. Для проверки работоспособности библиотеки классов создать демонстрационную программу с поддержкой оконного пользовательского интерфейса
8. Для отработки возможных ошибок времени выполнения использовать механизм исключений (exception)
9. Язык программирования и среда разработки: Delphi, Java, C# .NET (по выбору)