Вход

Разработка эскизного и технического проектов программы

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 355218
Дата создания 06 июля 2013
Страниц 19
Мы сможем обработать ваш заказ (!) 27 декабря в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
1 310руб.
КУПИТЬ

Содержание

1. Оглавление

1. Оглавление
2. Разработка эскизного и технического проектов программы.
2.1. Введение.
2.2. Технические характеристики.
3. Разработка рабочего проекта.
3.1. Разработка программы.
3.2. Текст программы.
3.3. Описание программы.
3.4. Тестирование программы.
4. Внедрение.
5. Литература.

Введение

Разработка эскизного и технического проектов программы

Фрагмент работы для ознакомления

if Root^.Left = nil then Root := Root^.Right
else
if Root^.Right = nil then Root := Root^.Left
else Root^.value := DeleteMin(Root^.Right);
end;
procedure Delete(Root: TTree);
begin
if Root = nil then exit;
Delete(Root^.Right);
Delete(Root^.Left);
Dispose(Root)
end;

function Find(Root: TTree; X: T): TTree;
var p: TTree;
begin
if Root <> nil then begin
p := Root;
while p <> nil do begin
if X < p^.value then p := p^.Left
else
if X = p^.value then Break
else p := p^.Right
end;
Find := p
end
else Find := nil
end;

procedure PrintDown(Root: TTree);
begin
if Root = nil then exit;
with Root^ do
begin
if Right <> nil then
FBTree.BTreeG.Items.Addchild(FBTree.BTreeG.Items.Item[r],inttostr(right.value)+'_right');
if Left <> nil then
FBTree.BTreeG.Items.Addchild(FBTree.BTreeG.Items.Item[r],inttostr(left.value)+'_left');
inc(r);
PrintDown(Right);
PrintDown(Left);
end;
end;
procedure LeafsCount(Root: TTree; var k: Integer);
begin
if Root <> nil then begin
LeafsCount(Root^.Left, k);
if (Root^.Left = nil) and (Root^.Right = nil) then Inc(k);
LeafsCount(Root^.Right, k)
end
end;
function GetNode(Root: TTree): T;
begin
if Root = nil then
else
GetNode:=Root^.value;
end;
procedure TFBTree.BCrBTreeClick(Sender: TObject);
begin // строим дерево
myTree := nil;
BTreeG.Items.Clear;
for i := 0 to size do
Insert(myTree, iv[i]);
r:=0;
FBTree.BTreeG.Items.Add(nil,inttostr(mytree.value)+'_top');
PrintDown(myTree);
end;
procedure TFBTree.N1Click(Sender: TObject);
var
s : string;
begin
BItem:=BTreeG.GetNodeAt(KoordX,KoordY);
if BItem <> nil then
begin
s := BItem.Text;
if pos('_',s) > 0 then setlength(s,pos('_',s)-1);
BTreeG.Items.Clear;
Remove(myTree, strtoint(s));
r:=0;
FBTree.BTreeG.Items.Add(nil,inttostr(mytree.value)+'_top');
PrintDown(myTree);
end;
end;
procedure TFBTree.BTreeGMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
KoordX := X;
KoordY := Y;
end;
end.
3.3. Описание программы.
3.3.1. Общие сведения:

Программа «Удаление элементов из двоичного дерева» реализована в среде визуального программирования Delphi 7 для функционирования в среде MS Windows.
3.3.2. Функциональное назначение:

Построение двоичного дерева и удаление выбранной вершины двоичного дерева.
3.3.3. Описание логической структуры
Используется функция вставки элемента дерева:
procedure Insert(var Root: TTree; X: T);
procedure CreateNode(var p: TTree; n: T);
begin
New(p);
p^.value := n;
p^.Left := nil;
p^.Right := nil
end;

begin
if Root = nil then CreateNode(Root, X)
else
with Root^ do begin
if value < X then Insert(Right, X)
else
if value > X then Insert(Left, X)
end;
end;
Вывод построенного дерева на экран:
procedure PrintDown(Root: TTree);
begin
if Root = nil then exit;
with Root^ do
begin
if Right <> nil then
FBTree.BTreeG.Items.Addchild(FBTree.BTreeG.Items.Item[r],inttostr(right.value)+'_right');
if Left <> nil then

Список литературы

5. Литература.

1. Delphi. Программирование на языке высокого уровня: Учебник для вузов/ Фаронов В. В. – СПб.: Питер, 2004.
2.Delphi7. Тейлор Д., Мишель Д., Пенман Д., Гоггин Т., Шемитц Д. – Спб.: Питер, 2002.
3.Алгоритмы и структуры данных. Вирт Н. – Спб.: Питер, 1998.
Очень похожие работы
Найти ещё больше
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00444
© Рефератбанк, 2002 - 2024