Тестирование и использование приложения
1.Запустите приложение на выполнение, нажав быстрые кнопки Сохранить все и Запуск.
2.Составьте тесты, которые проверят правильность сообщений об ошибках.
3.Выполните преобразования для исходного выражения в общем виде, содержащего не менее трех вложенных скобок и все арифметические операции. Вычислите значение подобного по сложности арифметического выражения.
4.Выделите в отдельный класс функции работы со стеком. Затем выполните отладку отредактированного приложения и получите результаты, представленные на рис.5.4 и 5.5.
Рис.5.4 – форма после пребразований выражения
Рис.5.5 – форма после пребразований и вычисления выражения
Контрольные вопросы
1.Внесите комментарии в файл LR_5.cpp.
2.Внесите комментарии в функции работы со стеком в файле f_5.cpp.
3.Внесите комментарии в функцию проверки исходного выражения.
4.Внесите комментарии в функцию расстановки пробелов в исходном выражении.
5.Внесите комментарии в функцию получения постфиксной записи исходного выражения с пробелами.
6.Внесите комментарии в функцию реверсирования исходного выражения с пробелами.
7.Внесите комментарии в функцию преобразования реверсированного исходного выражения с пробелами в постфиксную запись.
8.Внесите комментарии в функцию реверсирования постфиксной записи реверсированного исходного выражения с пробелами, или в функцию получения префиксной записи.
|
|
9.Внесите комментарии в функцию вычисления значения исходного выражения по постфиксной записи.
10.Где и как создается и разрушается объект класса Stack?
11.Как выделить функции работы со стеком в отдельный класс?
12.Каков список действий, доступных пользователю через разделы меню и кнопки инструментальной панели, в данной работе?
13.Какие компоненты обеспечивают диспетчеризацию действий?
14.Расскажите о возможностях редактора диспетчера действий ActionList.
15.Каково назначение компонента ImageList? Как он используется?
16.Расскажите о последовательности шагов при формировании списка действий и проектирования меню и инструментальной панели в данной работе.
17.Как пользоваться Редактором Действий? Как задаются значения свойствам объекта действия?
18.Какие события определены для каждого действия? Какое событие и как используется в данной работе? Как еще можно использовать это событие?
19.Как использовать объект действия для щелчка на кнопке инструментальной панели?
20.Как свойства и обработчики событий объекта действия перенести на раздел меню? На кнопки инструментальной панели?
21.Расскажите о компоненте ToolBar. Какие свойства и как используются в данной работе?
22.Поместите алгоритмы в обработчики щелчков на кнопках инструментальной панели и свяжите их с меню.
|
|
ЛАБОРАТОРНАЯ РАБОТА 6
ОЧЕРЕДЬ ПРИОРИТЕТОВ
Введение
Очередь (queue) – это структура данных, которая сохраняет элементы в стиске и обеспечивает доступ к данным только в двух концах списка. Элемент вставляется в конец списка и удаляется из начала списка. Приложения используют очередь для хранения элементов в порядке их поступления.
Элементы удаляются из очереди в том же порядке, в котором они сохраняются и, следовательно, очередь обеспечивает FIFO(first-in/first-out) упорядочение. Обслуживание клиентов в очереди и буферизация задач принтера в системе входных и выходных потоков принтера – это классические примеры очередей.
Возможны два способа реализации очереди. В первом способе блоки памяти под элементы очереди выделяются и освобождаются по мере поступления и удаления элементов и связываются указателями. Доступ к данным осуществляется через указатели на начало и конец очереди. Следовательно, при первом способе реализации очередь представляет собой динамическую структуру данных. Во втором способе для реализации очереди используется массив и здесь может возникнуть условие полной очереди. Здесь для доступа к данным используются индексы первого и последнего элементов участка массива, занимаемого очередью.
|
|
В очереди приоритетов элемент также вставляется в конец очереди, но удаляется элемент с наивысшим приоритетом, вне зависимости от его положения в очереди.
Целью данной лабораторной работе является изучение модели очереди приоритетов при обслуживании клиентов компьютерного сервиса. Элементами очереди являются заявки клиентов с разными или одинаковыми приоритетами.
В приложении очередь является объектом класса и строится на основе фиксированного по размеру массива объектов другого класса. Массив объектов размещается в динамической памяти. Все объекты – элементы массива – имеют одинаковый размер.
Проектирование приложения.
Дата добавления: 2018-05-13; просмотров: 373; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!