![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 05.11.2012
Сообщений: 1
|
![]()
ПОМОГИТЕ,ПОЖАЛУЙСТА!!)) Только начинаю программировать, но нравится и охота понять, прошу помощи, не могу сообразить. Задача: "14. Для ориентированнного графа, заданного пользователем, реализовать алгоритм поиска кратчайших путей между всеми парами вершин с использованием алгоритма Флойда. Вывести графическое изображение графа."
Есть алгоритм ФЛойда: var Form1: TForm1; A,P,C:array of array of integer; n,t,y:integer; Procedure Floyd(n:integer); var i,j,k:integer; begin SetLength(A,n,n); SetLength(P,n,n); SetLength(C,n,n); //A - Матрица, содержащая кратчайшие пути //P - Матрица, сохраняющая маршруты for i:=1 to n{n} do for j:=1 to n{n} do begin a[i,j]:=c[i,j]; p[i,j]:=0; end; for k:=1 to n do for i:=1 to n do for j:=1 to n do if (a[i,k]+a[k,j]<a[i,j]) then begin a[i,j]:=a[i,k]+a[k,j]; p[i,j]:=k; end; end; если что неправильно, подскажите пожалуйста)) и основной вопрос: есть два стрингрида, в первый пользователь сам вводит стоимость весов графа, количество вершин задается в Edit1. и как в процедуре Button2Click связать алгоритм флойда и стрингрид??? и как вывести матрице кратчайших путей во второй стрингрид? |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Алгоритм Флойда | Dashylia | Помощь студентам | 0 | 31.10.2012 21:21 |
алгоритм Флойда | пипеточка | Общие вопросы Delphi | 1 | 02.06.2012 10:19 |
Алгоритм Флойда | Александр36М | Помощь студентам | 5 | 14.10.2011 16:16 |
Алгоритм Флойда-Уоршела | _Disa | Общие вопросы C/C++ | 4 | 17.11.2010 11:36 |
Алгоритм Флойда | Дим@@ | Помощь студентам | 4 | 25.10.2010 20:19 |