С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/40: Рейтинг темы: голосов - 40, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 03.04.2016
Сообщений: 69
1

Перевод матрицы смежности в матрицу инцидентности

09.10.2016, 16:21. Показов 7462. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет, напишу как есть, препод в начале года сказал что поставит автомат тем кто любую прогу по его предмету напишет, так вот я решил взять графы, а именно перевод из матрицы смежности в матрицу инцидентности. С чего начать? P.S на форме, 2 стринггрида в 1 записывается матрица смежности, а во втором должна будет выводится матрица инцидентности.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Блог
09.10.2016, 16:21
Ответы с готовыми решениями:

Перевод из фактор множества в матрицу смежности и инцидентности
помогите пожалуйста составить блок схему для программы в паскаль АБС.нет Program Pr19; uses...

Переход из матрицы смежности в матрицу инцидентности
Переход из матрицы смежности в матрицу инцидентности на c# очень надо, но не понимаю как реализовать

Как из матрицы смежности получить матрицу инцидентности?
Здравствуйте. Можно ли из матрицы смежности получить матрицу инцидентности? Матрица смежности у...

Из матрицы смежности в матрицу инцидентности для неориентированного графа
Из матрицы смежности получить матрицу инцидентности. У меня есть программа для орграфа, как ее...

7
5580 / 4430 / 1080
Регистрация: 29.08.2013
Сообщений: 27,707
Записей в блоге: 3
09.10.2016, 16:52 2
Цитата Сообщение от Sokol666 Посмотреть сообщение
С чего начать?
с задания
0
W
115 / 115 / 33
Регистрация: 16.04.2013
Сообщений: 750
10.10.2016, 08:51 3
Опа прикол! В моем высшем образовании графы вообще отсутствуют оказывается.)))
А есть формула этого перевода, а гугл не рулит как-то?
0
0 / 0 / 0
Регистрация: 03.04.2016
Сообщений: 69
10.10.2016, 17:10  [ТС] 4
Естественно я сразу в лугл полез, максимум что нашёл, это перевод из матрицы достижимости в матрицу инцидентности. Задания как такового и нет, т.к. прога не обязательна. Но автомат получить хочется. Т.к. задания никто не давал вот что придумал: 1)Заполнить первый стринггрид матрицей смежности. 2) Перенести данные в массив, преобразовать по формуле , и вывести во втором стринггриде.
0
W
115 / 115 / 33
Регистрация: 16.04.2013
Сообщений: 750
11.10.2016, 09:41 5
Мне задание понятно было с первого поста. Ты формулу дай перевода.
Цитата Сообщение от Sokol666 Посмотреть сообщение
перевод из матрицы достижимости в матрицу инцидентности
Добавлено через 3 минуты
Так тебе из смежности или из достижимости надо? )))

Добавлено через 1 минуту
а может такое сойдет?
Алгоритм перевода матрицы смежности в достижимости

Добавлено через 3 минуты
FAQ по графам

Добавлено через 39 минут
Чето я матчасть не догнал! В матрице Смежности присутствуют номера только вершин графа. В матрице Инцидентности номера вершин и ребер графа. И как тогда сделать перевод из С в И, мы же ребер не знаем по м-це Смежности???

Добавлено через 17 минут
Перевод возможен только из Инцидентности в Смежности
0
0 / 0 / 0
Регистрация: 03.04.2016
Сообщений: 69
12.10.2016, 17:18  [ТС] 6
Я имел виду что в лугле нашёл только перевод из достижимости в инцидентности, а мне надо из матрциы смежности в матрицу инцидентности. Формулу перевода я вот и ищу. В смежности же из какой в какую точку идёт ребро, из v1 допустим в v2 и v3.

Добавлено через 20 часов 23 минуты
Я теперь понял что вы имели ввиду, без подписи ребер не построить матрицу инцидентности, а если перенести матрицу на картинку и ребра подписать?
0
W
115 / 115 / 33
Регистрация: 16.04.2013
Сообщений: 750
13.10.2016, 08:54 7
Зачем изобретать велосипед? матрица инцидентности походу более информативная получается. Может ее взять как входные данные и далее перевести уже во что-то?
В общем тебе видней, я же писал уже что матчастью по графам не владею, ну не читали нам эту тему, наверное решили что не надо оно, а зря тема же интересная

Добавлено через 3 минуты
Цитата Сообщение от qwertehok Посмотреть сообщение
С чего начать?
с задания
Точняк! А я тогда подумал что чувак прикалывается)))

Добавлено через 9 минут
Короче, это форум программистов, поэтому идешь домой берешь букварь, учишь буквы, цифры.. и т.д. Определяешься с заданием, решением, делаешь его ручками на промокашке, хотябы для матрицы 2х2 или 3х3, и (ЕСЛИ!) получается потом уже спрашиваешь уже как это все в компутер впихнуть
0
0 / 0 / 0
Регистрация: 03.04.2016
Сообщений: 69
14.10.2016, 23:17  [ТС] 8
Дратути ещё раз, нашёл пост на этом форуме, парень с ником kirito выложил вот такой код:
Delphi
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
43
44
45
46
47
48
49
50
procedure TForm1.Button5Click(Sender: TObject);
var i,j,k,m,p,kk:integer;
    qw:boolean;
begin
  for i:=1 to stringgrid1.ColCount-1 do
    for j:=1 to stringgrid1.rowCount-1 do
      if stringgrid1.cells[i,j]='' then qw:=true;
  if qw=true then showmessage('Матрица не заполнена!') else
  begin
    k:=0;
    stringgrid2.colCount:=stringgrid1.RowCount;
    for i:=1 to stringgrid1.colCount-1 do
       for j:=1 to stringgrid1.rowCount-1 do
          if stringgrid1.cells[i,j]<>'0' then inc(k);
    k:=k div 2;
    stringgrid2.rowCount:=k+1;
    m:=form1.StringGrid2.colCount;
          with form1.StringGrid2 do
            begin
              for i:=1 to rowcount-1 do
                cells[0,i]:=inttostr(i);
            end;
          with form1.StringGrid2 do
            begin
              j:=1;
              m:=m+65;
              for i:=65 to m do
                begin
                  cells[j,0]:=chr(i);
                  inc(j);
                end;
            end;
      kk:=1;
      p:=2;
      for j:=1 to stringgrid1.rowcount-1 do
 
        for i:=p to stringgrid1.ColCount-1 do
          if stringgrid1.Cells[i,j]='1' then
            begin
              stringgrid2.Cells[i,kk]:='1';
              stringgrid2.Cells[J,kk]:='1';
              inc(kk);
              inc(p);
            end;
      for i:=1 to stringgrid2.colCount-1 do
       for j:=1 to stringgrid2.rowCount-1 do
          if stringgrid2.cells[i,j]='' then stringgrid2.cells[i,j]:='0';
      memo1.Text:='Матрица инцидентности успешно создана';
   end;
end;
У него по матрице смежности строится матрица инцидентности, но не полностью. Хотя подписи рёбер нет.

Добавлено через 25 минут
P.S я сложных путей не ищу,из задания надумал только то что создаётся 2 цикла: 1 цикл от iтого элемента до colcount-1 ищется 1 далее запоминается, потом переходит на следующий row и ищет дальше так как на столбце 2 единицы значит соединены 2 ребра.
0
14.10.2016, 23:17
BasicMan
Эксперт
19315 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
Блог
14.10.2016, 23:17
Помогаю со студенческими работами здесь

Из матрицы смежности в матрицу инцидентности для неорентированного графа
Как из матрицы смежности получить матрицу инцидентности для неорентированного графа. 1 1 0 0 1 0...

Преобразование матрицы смежности в матрицу инцидентности для неорграфа
Здравствуйте дорогие форумчане-программисты, помогите пожалуйста кто знает составить программу для...

Из матрицы инцидентности неориентированного графа сделать матрицу смежности
Помогите сделать блок схему, которая из матрицы инцидентности делает матрицу смежности Добавлено...

С матрицы смежности в матрицу инцидентности, список рёбер и вершин, диаграмма
Помогите, пожалуйста. На C# или C++ нужна такая программа, что когда задается матрица смежности (5...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru