Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Топ:
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
2020-04-01 | 67 |
5.00
из
|
Заказать работу |
|
|
Разработка и проектирование интерфейса были продуманы и реализованы в ходе выполнения курсовой работы.
Для создания интерфейса в среде разработки Delphi7 были выбраны следующие элементы:
1. Label -для создания надписей и элементов графики.
. Edit - для вводимых пользователем значений.
. Button - клавиши управления.
. StringGrid - для отображения массива.
Разработка алгоритмов прямого пошагового выполнения визуализации и выполнения отката
//Запись очереди в таблицу типа TStringGrid.QueueToSg(const aQueue: TQueue; aSg: TStringGrid);,j: Integer;.Rows[0].Clear;.Rowcount:=2;aQueue.Cnt = 0 then begin.ColCount:=1;.Cells[0, 0]:= '';else begin.ColCount:= aQueue.cnt;i:= 0 to aQueue.cnt-1 do.Cells[i, 0]:=aQueue.Arr[i];;j:= 0 to aQueue.Cnt do asg.Cells[j,1]:='...';aQueue.start<>-1 then.Cells[aQueue.start,1]:='start';.Cells[aQueue.ent,1]:='end';aQueue.start=aQueue.ent then asg.Cells[aQueue.ent,1]:='start end';;(aQueue.free<>-1) and (aQueue.cnt=0) then.Cells[aQueue.free,1]:='free';;enq(var aQueue: TQueue; const aData: TData);:integer;aQueue do begincnt<length(arr) then begin(cnt);[cnt-1]:=adata;(ent);start=-1 then inc(start);cnt=length(arr) then:=-1inc(free);else.edit3.text:=arr[start];[start]:=adata;(start);:=start-1;start>length(arr)-1 then start:=0;;;;
//Изъятие элемента из начала очереди.popr(var aQueue: TQueue):string;,j: Integer;aQueue.cnt=0 then exit;:=aQueue.arr[aQueue.start];.arr[aQueue.start]:='';.free:=aQueue.start;aQueue.cnt<>0 thenaQueue do beginstart=ent then:=-1;:=-1;:=0;:=0;;start=0 then begini:= 0 to cnt-2 do[i]:=arr[i+1];.arr[aQueue.Cnt-1]:='';(ent);(cnt);;start>ent then begini:= start to cnt-2 do[i]:=arr[i+1];.arr[aQueue.Cnt-1]:='';(cnt);;start=cnt then begin:=0;; end;
Блок-схема алгоритма процедуры представлена в Приложении 1 и 2
Особенности программной реализации
Для удобства реализации программы был выбран элемент Delphi10 stringrid - таблица. В нее выводится очередь для того чтобы показать какие элементы находятся сейчас в очереди.
Методика и результаты тестирования
Для начала необходимо ввести рандом чисел. По умолчанию он равен 5. Затем, при нажатии на кнопку рандом чисел числа меняются. Затем мы можем извлечь число из начала очереди. Для этого нам надо нажать кнопку извлечь элемент. Для вставки элемента в очередь необходимо ввести число и нажать кнопку вставить элемент. Так же мы можем добавить или уменьшить количество элементов в очереди.
|
Тестирование.
1). Зададим рандом из 5 чисел.
). Увеличим очередь.
). Добавим число.
). Извлечём число.
Программа работает исправно.
Заключение
В данной курсовой работе была реализована очередь на основе циклического массива. В ходе выполнения были изучены алгоритмы удаления, вставки в массиве. Так же была разработана программа на языке высокого уровня Delphi, предназначенная для визуализации процесса работы данных алгоритмов. Цель моей работы - написать алгоритм, который будет отображать реализацию очереди, была достигнута в данной работе.
Источники
1. Односвязный список [Электронный ресурс]://веб-информ.рф/C++/6/22/2205
. Бакнелл Д. Фундаментальные алгоритмы и структуры данных в Delphi. Изд.дом ДиаСофтЮП, 2003
3. Списки [электронный ресурс] <http://ru.wikipedia.org/>
4. Макконнелл Дж. Основы современных алгоритмов М.: Техносфера, 2004
Приложение 1
Блок схема функции popr.
Приложение 2
Блок схема функции push
|
|
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!