Формирование очереди
Под очередью понимается список, обслуживаемый по принципу «первый пришел ‑ первым ушел».
Пример:
Procedure TForm1.Test_oheredClick(Sender: TObject); //очередь
Type ukaz=^stack; stack=Record inf:Integer; next:ukaz; end; //типы
Var nah,kon,tek,del:ukaz; value:Integer; //переменные
Procedure sozdo; //процедура создания очереди из пяти записей
Var i:Integer; //переменная цикла
Begin New(nah); nah^.inf:=1; kon:=nah; //создание первой записи очереди
For i:=2 to 5 do //цикл формирования очереди
Begin tek:=kon; New(kon); //выделение памяти для записи
tek^.next:=kon; // запоминание адреса следующей записи
kon^.inf:=i; kon^.next:=nil; //формирование значений полей новой записи
End; {конец тела цикла}End; //конец процедуры создания очереди
Procedure dobavo; //процедура добавления в очередь трех записей
Var i:Integer; {переменная цикла} Begin
For i:=6 to 8 do //цикл добавления записей в очередь
Begin tek:=kon;New(kon); //выделение памяти для записи
tek^.next:=kon; //запоминание адреса следующей записи
kon^.inf:=i; kon^.next:=nil; //формирование значений полей новой записи
End; {конец тела цикла}End; //конец процедуры добавления
Procedure udalo; //процедура удаления первой записи из очереди
Begin del:=nah; nah:=nah^.next; Dispose(del); end; //удаление первой записи
Procedure vivodo; //процедура вывода очереди
Begin Label1.caption:='';tek:=nah;//очистка Label1 и зап.адр. первой записи
while tek<>Nil do //цикл вывода записей очереди
Begin Label1.caption:=Label1.caption+IntToStr(tek^.inf)+','; tek:=tek^.next;
End;{конец тела цикла. В результате в Label1 выведется: 2,3,4,5,6,7,8,}End;
begin //процедура тестирования процедур обработки очереди
sozdo; dobavo; udalo; vivodo;//вызов процедур обработки очереди
End; //конец процедуры тестирования процедур обработки очереди
Вопросы для самопроверки и контроля
Контрольные вопросы
1. Что представляет собой структура данных «стек»?
2. Что представляет собой структура данных «очередь»?
3. Каково назначение метода New?
4. Какой константой можно задать признак отсутствия адреса в указателе?
Глава 2. Среда разработки Delphi
Общие сведения
Окна
Программы создаются в интегрированной среде разработки IDE (Integrate Development Environment) (рис. 2.1.1.1). Среда Delphi относится к системам быстрой визуальной разработки приложений RAD (Rapid Application Development).
Рис. 2.1.1.1. Окна среды разработки приложений
Для многих окон имеются контекстные меню с командами настройки (Properties) и управления окнами. Рассмотрим основные окна среды Delphi.
Окно настройки среды (Environment Options) вызывается командой Tools/ Environment Options и служит для настройки параметров среды.
Окно Инспектора объектов (Object Inspector) предназначено для изменения свойств объектов. Окно можно вызвать командой View/Object Inspectorили клавишей F11. Окно имеет две страницы Properties (описание свойств объектов в виде наименования и значения свойств) и Events (список процедур обработки различных событий). Двойной щелчок по полю события выводит окно редактора кода процедуры обработки этого события и программист может создать или откорректировать процедуру на языке Delphi, которая будет автоматически выполняться при наступлении этого события. Если нужно обратиться к уже существующей процедуре, то можно открыть список и выбрать эту процедуру. В верхнем поле с раскрывающимся списком можно выбрать текущий объект, свойства которого нужны пользователю. В контекстном меню имеются полезные команды: Arrange (сортировка свойств по категориям или именам), View (отображаемые свойства). Если свойство объекта (например, DataSet) представляет другой объект (Query1), то двойной щелчок на значении этого свойства при нажатой клавише Ctrl выведет свойства, указанного в значении объекта (Query1).
Окно конструктора формы (Form1) содержит объекты на форме, из которой формируется отдельный модуль с кодом описания формы и ее объектов и процедур.
Окно редактора кода (Unit1.pas) служит для создания и редактирования программ. Для быстрого переключения между окнами кода и формы используется клавиша F12. Командой Add To-DoItem из контекстного меню можно добавить текст комментария (например, сообщение об ошибке в программе) к программе (поле Text), фамилию автора (Owner), важность по пятибалльной системе (Priority), категорию (Category). Комментарий выводится и в программу, начиная с позиции курсора. Вызов окна просмотра комментариев осуществляется командой View/To-Do List. В окне можно пометить галочкой отдельные комментарии. Двойным щелчком по строке с комментарием можно вернуться на программу с этим комментарием. Контекстное меню этого окна позволяет выполнять различные операции с комментариями (удалять, включать, редактировать, сортировать и др.).
Окно проводника кода находится слева от окна редактора кода и содержит дерево объектов модуля формы. Это окно будет отсутствовать, если сбросить флажок Automatically show Explorer на странице Explorer окна Environment Options, вызываемой командой Tools/Environment Options. Вывод этого окна производится командой View/Code Explorer.
Окно менеджера проекта (Project Manager) вызывается командой View/Project Managerи служит для управления частями проекта (просмотра, удаления и добавления новых частей).
Окно обозревателя проекта (Exploring ...) вызывается командой View/Browserпозволяет быстро перемещаться по дереву глобальных символов, классов, модулей. В зависимости от типа текущего объекта в правой части окна доступны детальные его характеристики: Scope (пределы), Inheritance (иерархия), References (ссылки). Окно можно настроить командой Tools/Environment Options/Explorer.
Главное меню содержит набор команд управления средой.
Панели кнопок быстрого вызова, часто используемых команд главного меню, находятся под левой частью меню. Существует 5 панелей: стандартная (Standart), просмотра (View), отладки (Debug), пользователя (Custom) и рабочего стола (Desktop). Настройку панелей можно произвести из окна Customize (Настройка), вызываемой командой Customize из контекстного меню панелей.
Сохранение настроек окон можно реализовать командой View/Desktop/Save desktop (кнопкой Save current desktop), указав далее имя настройки. Выбор нужной настройки осуществляется из списка настроек (в конце сроки меню). Для окон отладки используется команда View/Desktop/Set Debugger Desktop (кнопка Set debugger desktop).
Дата добавления: 2016-03-22; просмотров: 978;