Автор работы: Пользователь скрыл имя, 03 Июня 2015 в 22:05, курсовая работа
В результате курсовой работы были выполнены следующие этапы:
Обследование и разработка технического задания
Построение блок-схемы программы
Разработка программы.
Тестирование и устранение ошибок.
Данная прикладная программа поможет при выполнении вычислений цикломатических чисел графов и нахождении матриц смежности.
При создании курсового проекта я лучше познакомилась со свойствами некоторых компонент, глубже изучила теорию графов.
Задание на курсовой проект 2
Краткая теория графов 2
Характеристика программного обеспечения 6
Структура среды программирования 9
Алгоритм и исходный код программы 12
Исходный код главной формы 18
Вывод 30
Содержание 31
Библиография 32
if (X+20>=gCanv.Width) then X:=gCanv.Width-20;
if (X<=0) then X:=1;
if (Y+20>=gCanv.Height) then Y:=gCanv.Height-20;
if (Y<=0) then Y:=1;
vertex_list[vertex_moves].x:=
vertex_list[vertex_moves].y:=
paint_system_graph;
end;
for i:=0 to ListBox1.Items.Count-1 do
begin
if (vertex_list[i].x<=X) and (vertex_list[i].y<=Y) and (vertex_list[i].x+20>=X) and (vertex_list[i].y+20>=Y) then
begin
vertex_moves:=i;
StatusBar1.Panels[1].Text:='P№
StatusBar1.Panels[2].Text:='
StatusBar1.Panels[3].Text:='
break;
end
elsevertex_moves:=-1;
end;
end;
procedure TForm1.gCanvMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
mpress:=false;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
vertex_add:=false;
ridge_add:=true;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
begin
ifvertex_select<ListBox1.
begin
vertex_select:=ListBox1.
StatusBar1.Panels[1].Text:='P№
StatusBar1.Panels[2].Text:='
StatusBar1.Panels[3].Text:='
paint_system_graph;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
function ridge_count:integer;
varms_i,ms_j:integer;
count:integer;
begin
count:=0;
forms_i:=0 to ListBox1.Items.Count-1 do
forms_j:=0 to ListBox1.Items.Count-1 do
begin
ifmassiv_of_connectivity[ms_i, ms_j]=1 then
begin
inc(count);
end;
ridge_count:=count;
end;
end;
begin
Label1.Caption:=inttostr(
end;
procedure TForm1.N7Click(Sender: TObject);
begin
SaveDialog1.Filter:='*.bmp|*.
if SaveDialog1.Execute then
gCanv.Picture.SaveToFile(
end;
procedure TForm1.N8Click(Sender: TObject);
var i:integer;
begin
ListBox1.Items.Delete(vertex_
for i:=0 to ListBox1.Count-1 do ListBox1.Items.Strings[i]:='
if ListBox1.Count-1>=0 then
for i:=0 to ListBox1.Count-1 do
begin
ifmassiv_of_connectivity[i, vertex_select]=1 then massiv_of_connectivity[i, vertex_select]:=0;
ifmassiv_of_connectivity[
vertex_list_mass[vertex_select
end;
paint_system_graph;
end;
procedure TForm1.N10Click(Sender: TObject);
begin
if Form3.ShowModal>=2 then
begin
vertex_list_mass[vertex_
ListBox1.Items.Strings[vertex_
end;
Form3.Edit1.Text:='';
paint_system_graph;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
Form2.Button1.Caption:='Удалит
if Form2.ShowModal>=2 then
begin
massiv_of_connectivity[
massiv_of_connectivity[
end;
paint_system_graph;
end;
procedure TForm1.N12Click(Sender: TObject);
vari,j:integer;
begin
for i:=0 to ListBox1.Count-1 do
form4.StringGrid1.Cells[0, i+1]:=inttostr(i);
for i:=0 to ListBox1.Count-1 do
form4.StringGrid1.Cells[i+1,0]
for i:=0 to ListBox1.Count-1 do
for j:=0 to ListBox1.Count-1 do
begin
form4.StringGrid1.Cells[i+1, j+1]:=inttostr(massiv_of_
end;
form4.ShowModal;
end;
procedure TForm1.N15Click(Sender: TObject);
begin
SaveDialog1.Filter:='*.bmp|*.
if SaveDialog1.Execute then
gCanv.Picture.SaveToFile(
end;
procedure TForm1.N16Click(Sender: TObject);
begin
form1.Close;
end;
procedure TForm1.N17Click(Sender: TObject);
begin
ridge_add:=false;
vertex_add:=true;
end;
procedure TForm1.N18Click(Sender: TObject);
begin
vertex_add:=false;
ridge_add:=true;
end;
procedure TForm1.N22Click(Sender: TObject);
begin
if Form3.ShowModal>=2 then
begin
vertex_list_mass[vertex_
ListBox1.Items.Strings[vertex_
end;
Form3.Edit1.Text:='';
paint_system_graph;
end;
procedure TForm1.N19Click(Sender: TObject);
var i:integer;
begin
ListBox1.Items.Delete(vertex_
for i:=0 to ListBox1.Count-1 do ListBox1.Items.Strings[i]:='Ве
if ListBox1.Count-1>=0 then
for i:=0 to ListBox1.Count-1 do
begin
ifmassiv_of_connectivity[i, vertex_select]=1 then massiv_of_connectivity[i, vertex_select]:=0;
ifmassiv_of_connectivity[
vertex_list_mass[vertex_
end;
paint_system_graph;
end;
procedure TForm1.N21Click(Sender: TObject);
vari,j:integer;
begin
for i:=0 to ListBox1.Count-1 do
form4.StringGrid1.Cells[0, i+1]:=inttostr(i);
for i:=0 to ListBox1.Count-1 do
form4.StringGrid1.Cells[i+1,0]
for i:=0 to ListBox1.Count-1 do
for j:=0 to ListBox1.Count-1 do
begin
form4.StringGrid1.Cells[i+1, j+1]:=inttostr(massiv_of_
end;
form4.ShowModal;
end;
end.
Вывод.
В результате курсовой работы были выполнены следующие этапы:
Данная прикладная программа поможет при выполнении вычислений цикломатических чисел графов и нахождении матриц смежности.
При создании курсового проекта я лучше познакомилась со свойствами некоторых компонент, глубже изучила теорию графов.
Содержание
Список литературы:
Информация о работе Нахождение всех гамильтоновых циклов заданного графа