Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 15.03.2019
Сообщений: 1
1

Алгоритм Прима

15.03.2019, 20:38. Просмотров 666. Ответов 0

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

В файле t находится матрица и количество вершин
7
0 3 0 0 0 0 4
3 0 0 0 1 0 0
0 0 0 5 0 2 2
0 0 5 0 3 0 0
0 1 0 3 0 0 0
0 0 2 0 0 0 1
4 0 2 0 0 1 0

Сама программа:
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
32
33
34
35
36
37
38
39
40
41
42
Program Prima;
const n=10;
max=100000;
var 
vt : set of integer;
et : set of integer;
v : set of integer;
i, j, b, c, d, min, w: integer;
t: text;
matrix: array[1..n, 1..n] of integer;
begin
assign(t,'c:\Новая папка\t.txt');
reset(t);
readln(t,b);
for i:=1 to b do
    begin
      for j:=1 to b do
          begin
             read(t,matrix[i,j]);
          end;
    end;
close(t);
begin
min:=max;
w:=0;
vt:=[1];
et:=[];
v:=[2..b];
for i:=1 to b do
for j:=1 to b do
if (matrix[i,j]>0) and (i in vt) and (matrix[i,j]<min) then begin
min:=matrix[i,j]; {вот это место как-то надо додумать}
c:=j;
d:=i;
vt+=[c];
et+=[d,c];
v-=[c];
w:=w+matrix[d,c];
end;
writeln(vt, ' ', et, ' ', v, ' ', w);
end;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.03.2019, 20:38
Ответы с готовыми решениями:

Реализовать метод Прима для построения минимального каркаса графа. Исходный граф задан в файле в виде матрицы смежности
Реализовать метод Прима для построения минимального каркаса графа. Исходный граф задан в файле в...

Алгоритм Прима / Краскала: Соединить все города телефонной связью
Дана плоская страна и в ней n городов. Нужно соединить все города телефонной связью так, чтобы...

Линейный алгоритм, Алгоритм с ветвлениями, Циклический алгоритм Линейный алгоритм
Линейный алгоритм, Алгоритм с ветвлениями, Циклический алгоритм Линейный алгоритм 1. Объясни, что...

Алгоритм Прима
Доброго времени суток. Мне нужно перевести программу написанную в Pascal, в Delphi. Вот...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2019, 20:38

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

Алгоритм Прима
Помогите пожалуйста исправить ошибки |34|error: invalid conversion from 'int' to 'int**' ...

Алгоритм Прима
Доброго времени суток. Имеется алгоритм Прима, собственно код elem(X, ).(X, ) :- elem(X,HS)....

Алгоритм Прима
Есть класс GraphEdge, отвечающий за ребро class GraphEdge { public int v1, v2; ...

Алгоритм прима
Всем привет! Помогите пожалуйста реализовать алгоритм Прима, для нахождения минимального остового...


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

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

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