IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Графы
Юлия92
сообщение 28.05.2012 8:40
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 21
Пол: Женский
Реальное имя: Джули

Репутация: -  0  +


1)Добрый день люди есть псевдокод методичка Земленухина по которому не все понимаю.Непонятны в описании на паскаль..7 и 10 строки...помогите кто чем может)))

1. for iX do num[i]:=0; ftr[i]:=0
2. for i=1 to m do numBL[i]:=0
3. k:=1; kU:=0; SU:=nil; cntBL:=0; U:=nil;
4. for rX
5. do if num[r]=0
6. then BLOCK®

BLOCK(i)
1. num[i]:=k; L[i]:=k k:=k+1
2. for jГ[i]
3. do if num[j]=0
4. then SU (i,j)
5. ftr[j]:=i
6. BLOCK(j)
7. L[i]:=min(L[i],L[j])
8. if L[j]  num[i]
9. then cntBL:=cntBL+1
10. while Top(SU)  (i,j)
11. do u  SU ; U  u
12. kU:=kU+1
13. numBL[kU]:=cntBL
14. else if j  ftr[i]
15. then SU (i,j)
16. L[i]:=min(L[i],num[j])

2)Применение Пвш...Надо найти экцентриситет (максимальный num) радиус(min num)диаметр(максимальный экцетриситет),а как найти матрицу расстояний и диаметральную цепь??? и как это все всунуть в пвш???


--------------------
ДЖУЛИ
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Юлия92
сообщение 28.05.2012 11:49
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 21
Пол: Женский
Реальное имя: Джули

Репутация: -  0  +


Землячка?)))методичка Землянухины(авторы мужчина и женщина)))).А на лекции нам вообще давали другой малец код,(там вообще нет функцииTOP)Вот то на что меня хватило по реализациии(((...как обычно не густо....но очень очень надо сделать эту лабу (((сижу и мучаюсь
uses crt;
const
max=50;
type
TMatrix = array [1..max,1..max] of byte;
TArray = array [1..max] of integer;

var
i,j,r,k,cntBL: integer;
num, ftr,L,Su : TArray;
Matrix : TMatrix;
n : integer;

function min(a,b:integer):integer;
begin
if a>b then min:=b
else
min:=a;
end;

procedure Blok(r:integer);
var
j:integer;

begin
num[r]:=k;
L[r]:=k;
k:=k+1;

for j:=1 to n do
begin
if (Matrix[r, j]<>0) and (num[j]=0) then
begin
Su[k]:=Matrix[r,j];
ftr[j]:=r;
Blok(j);
end;
end;
L[r]:=min(L[r],L[j]);
if L[j]>=num[r] then
begin
cntBl:=cntBl+1
end
else
if j<>ftr[r] then
L[r]:=min(L[i],num[j])
end;

begin
clrscr;

writeln('----Mosti,Bloki,tochki razdela-----');

write('а:');
readln(n);

writeln('Заполнение матрицы смежности');
for i:=1 to n do
for j:=1 to n do
begin
Write('(',i,',',j,')=');
read(Matrix[i,j]);
if Matrix[i,j] <> 0 then Matrix[i,j]:=1;
end;

writeln('Матрица смежности');
for i:=1 to n do
begin
for j:=1 to n do
write(Matrix[i,j],' ');
writeln;
end;
writeln;


writeln('Результат :');
for i:=1 to n do
begin
num[i]:=0; {ни одна вершина не посещалась}
ftr[i]:=0;
end;
k:=1;
cntBl:=0;
{U:=0;}


for r:=1 to n do
if num[r]=0 then Blok( r );




writeln;
readln;
end.

Прикрепленное изображение

Сообщение отредактировано: Юлия92 - 28.05.2012 18:32


--------------------
ДЖУЛИ
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 15.07.2025 8:32
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"