![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 11.12.2013
Сообщений: 3
|
![]() ![]() Нужно чтобы программа выводила кратчайший путь от точки (x1) до точки (x7) и длину пути. |
![]() |
![]() |
![]() |
#2 |
Lawful Evil
Участник клуба
Регистрация: 13.05.2008
Сообщений: 1,208
|
![]()
Наработки где?
А мозг? Зачем сразу в двух разделах?
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c) |
![]() |
![]() |
![]() |
#3 |
Регистрация: 11.12.2013
Сообщений: 3
|
![]()
program min_road;
const N = 7; var map: array[1..N, 1..N] of integer; road: array[1..N] of integer; X: array[1..N] of boolean; len: integer; c_len: integer; start, finish: integer; i, j: integer; procedure step(s, f, p: integer); var c: integer; begin if s = f then begin len := c_len; write('Возможный путь: '); for i := 1 to p - 1 do write(road[i], ' '); writeln('Длина пути: ', len); end else for c := 1 to N do if (map[s, c] <> 0) and (not X[c]) and ((len = 0) or (c_len + map[s, c] < len)) then begin road[p] := c; X[c] := TRUE; c_len := c_len + map[s, c]; step(c, f, p + 1); X[c] := FALSE; road[p] := 0; c_len := c_len - map[s, c]; end; end; begin for i := 1 to N do road[i] := 0; for i := 1 to N do X[i] := FALSE; for i := 1 to N do for j := 1 to N do map[i, j] := 0; map[1, 2] := 8; map[1, 3] := 4; map[2, 4] := 8; map[2, 5] := 3; map[3, 2] := 3; map[3, 4] := 10; map[3, 6] := 12; map[4, 6] := 3; map[5, 4] := 2; map[5, 7] := 10; map[6, 7] := 4; writeln(Введите входную и выходную вершину: '); readln(start, finish); road[1] := start; X[start] := TRUE; len := 0; c_len := 0; step(start, finish, 2); end. Как сделать, что бы паскаль подсвечивал кратчайший путь или как-нибудь его выделял! ? И еще подскажите каким методом решена задача? Последний раз редактировалось ILovePascal; 11.12.2013 в 13:12. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
(с++) Кратчайший путь в графе | Uefa | Помощь студентам | 15 | 04.12.2013 15:50 |
Кратчайший путь Delphi | zzzzz | Помощь студентам | 1 | 27.06.2012 07:39 |
Кратчайший путь к точке | W0LF | Общие вопросы Delphi | 3 | 17.05.2011 15:40 |
Кратчайший путь между двум вершинами | Gapro | Общие вопросы C/C++ | 4 | 04.11.2010 20:24 |
Найти кратчайший путь между точками | lucky | Общие вопросы Delphi | 0 | 27.05.2009 07:26 |