Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 120
1

Какой это язык программирования?

14.06.2016, 02:23. Просмотров 507. Ответов 11
Метки нет (Все метки)


Помогите перевести программу на язык делфи.
Алгоритм Борувки
В данном алгоритме (см. [2]) используется представления исходного графа G массивом E[1..m] его ребер и массивом W[1..m] весов данных ребер.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure MSP_BORUVKA(var ET; var mt; G; n,m);
 
begin
 
for s:= 1 to n do NME[s]:= 0;
 
Создать коллекцию Kиз n синглетонов множества {1, 2, … , n};
 
mt:= 0;
 
while FIND_NME(NME,K,E,G,n,m) do for s:= 1 to n do if NME[s]>0 then begin
 
a=E[NME[s]][1]; b=E[NME[s]][2]; Найти(i, a, K); Найти(j, b, K);
 
if i  j then begin mt:= mt+1; ET[mt]:= E[NME[s]]; Объединить(i,j,K); end;
 
NME[s]:= 0;
 
end;
 
end;
Функция FIND_NME осуществляет повторяющийся шаг стратегии Борувки: для каждого синего дерева, представленного в коллекции множеством своих вершин, которое имеет имя s, находит инцидентное ему неокрашенное ребро минимальной стоимости с наименьшим номером NME(s), концы которого не являются вершинами одного итого же синего дерева. При этом функция FIND_NME возвращает значение true, если хотя бы одно такое ребро найти удалось, и возвращает значение false, если этого сделать не получилось.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function FIND_NME(var NME; K; E; G; n,m) : boolean;
 
begin
 
FIND_NME = false;
 
for t:= 1 to m do begin
 
a=E[t][1]; b=E[t][2];
 
Найти(i,a,K); Найти(j,b,K);
 
if ij then begin
 
if NME[i]=0 then begin
 
NME[i]:= t; FIND_NME=true;
 
end else if W[t]<W[NME[i]] then NME[i]:= t;
 
if NME[j]=0 then begin
 
NME[j]:= t; FIND_NME=true;
 
end else if W[t]<W[NME[j]] then NME[j]:= t;
 
end;
 
end;
 
end;
Временная сложность алгоритма Борувки есть O(mlog n).
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.06.2016, 02:23
Ответы с готовыми решениями:

Какой язык программирования изучать?
Здравствуйте. Умные люди, скажите что из языков и сред разработки сейчас актуально. Со скольких лет...

Подскажите язык программирования
Привет всем. Давно уже знаю и пользуюсь языком программирования Delphi. Но все чаще и чаще...

Простейший язык программирования
На простейшем языке программирования (делфи) напишите следующую программу: s:=10; for i:=2 to 4 do...

Не могу выбрать нужный язык программирования
Всем добрый день! Столкнулся с проблемой написания программы для диплома. Программа, в принципе,...

11
3567 / 3039 / 819
Регистрация: 29.08.2013
Сообщений: 20,267
Записей в блоге: 2
14.06.2016, 08:56 2
Цитата Сообщение от cesium Посмотреть сообщение
Помогите перевести программу на язык делфи.
а это не делфи?
0
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 120
14.06.2016, 18:53  [ТС] 3
не похоже)

Добавлено через 17 минут
может и delfi,но не пашет в нем
0
Хитрая блондиночка $)
1461 / 976 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
14.06.2016, 18:57 4
Цитата Сообщение от cesium Посмотреть сообщение
может и delfi,но не пашет в нем
Паскаль как паскаль, но "пахать" он у тебя и не будет. Потому что ты копипастишь его без попыток разобраться. Угадала?
Задача книги показать примерно (видимо) а не дать списать. Дать возможность тебе разобраться в алгоритме.
В Делфи этот код заработает только если его "тело" правильно применить.
0
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 120
14.06.2016, 19:07  [ТС] 5
да скопировал, времени нету разбираться, курсовая на носу. Так как применить его тело?
0
Хитрая блондиночка $)
1461 / 976 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
14.06.2016, 20:31 6
Цитата Сообщение от cesium Посмотреть сообщение
да скопировал, времени нету разбираться
Тогда ничего не выйдет.
Цитата Сообщение от cesium Посмотреть сообщение
Так как применить его тело?
Придется правильно создать обработчики событий, и в них вызвать эти процедуры немного поправив. Однако этот код неполный. В примере используется псевдоконструкции, о которых ты ничего не пишешь. Их нужно делать исходя из теории книги (судя по всему). Поэтому если не разбирать книгу до косточки приведенные тобой примеры бесполезны для копипаста.
0
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 120
15.06.2016, 00:09  [ТС] 7
понятно, нигде нет этого алгоритма Борувки...
0
northener
15.06.2016, 00:49
  #8

Не по теме:

Цитата Сообщение от cesium Посмотреть сообщение
времени нету разбираться, курсовая на носу.
На кой **** тогда учиться, если курсовую хочешь просто скопипастить?

0
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 120
15.06.2016, 02:20  [ТС] 9
какая Вам разница?
0
Хитрая блондиночка $)
1461 / 976 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
15.06.2016, 07:58 10
Цитата Сообщение от cesium Посмотреть сообщение
понятно, нигде нет этого алгоритма Борувки...
В книге читай внимательнее. Должно быть. Иначе автору книги можно поставить твердую двойку.
0
411 / 345 / 126
Регистрация: 09.09.2011
Сообщений: 1,237
15.06.2016, 16:01 11
ну это "паскалеподобный" синтаксис описания алгоритма. это НЕ готовая программа.

такой механизм описания алгоритмов очень популярен на "западе". Например видел в одном курсе на corsera, хотя для реализации алгоритмов там использовался python.
0
Эксперт Pascal/Delphi
4665 / 2652 / 832
Регистрация: 04.10.2012
Сообщений: 9,666
16.06.2016, 09:57 12
Цитата Сообщение от cesium Посмотреть сообщение
понятно, нигде нет этого алгоритма Борувки...
здесь все уже есть.
Оплатите и все готово.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.06.2016, 09:57

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Делфи объектно ориентированный язык программирования?
Здравствуйте! Хотел бы более конкретно узнать, что есть ООП в Делфи. Вот есть у меня программа,...

надо перевести мат.формулу на язык программирования
Надо формулу перевести на язык программирования y=sin^3(x^2+a)^2-корень x/b Я написал вот так...

Как учить первый язык если это Delphi?
Как учить язык первый язык программирования, если на его роль я выбрал Delphi. Между программами...

Подскажите какой язык лучше начать изучать
Ребят захотел заняться изучением нового языка и не знаю какой выбрать, хотелось бы узнать ваши...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.