М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
aekawahar
aekawahar
23.08.2020 06:55 •  Информатика

5. Построить матрицу смежности для графа
Мой ответ
Отправить​

👇
Ответ:
ugifhuf
ugifhuf
23.08.2020

Матрица смежности - матрица, в которой на (ij)-м месте стоит 1, если между вершинами i и j есть ребро, и 0, если вершины не соединены ребром.

Здесь в графе 5 вершин и 5 рёбер, поэтому матрица будет 5 × 5 в ней будет 10 единиц (в два раза больше, чем число рёбер - ребро даёт 1 в (ij) и (ji))

Например, на месте (1, 2) и (2, 1) должна быть единица, так как эти две вершины соединены ребром.

Вот что должно в итоге получиться:

\begin{pmatrix}0 & 1 & 1 & 0 & 0 \\1 & 0 & 0 & 1 & 1 \\1 & 0 & 0 & 0 & 1 \\0 & 1 & 0 & 0 & 0 \\0 & 1 & 1 & 0 & 0\end{pmatrix}

4,8(44 оценок)
Открыть все ответы
Ответ:
Ruslan5278
Ruslan5278
23.08.2020
Uses
 GraphABC;

const
  a=30;

var
 xt,yt,x,y,i,j,t,xl,yl:integer;

procedure cross(x,y,a:integer);
begin;
setpencolor(clred);
line(x,y,x-a,y+a);
line(x-a,y,x,y+a);
setpencolor(clblack);
end;

begin;
randomize;
x:=windowwidth-300;
y:=0;
for i:=1 to 10 do
 begin;
  for j:=1 to 10 do
   begin;
    rectangle(x,y,x+a,y+a);
    x+=a;
   end;
  y+=a;
  x:=windowwidth-300;
 end;
x:=random(1,10);
y:=random(1,10);
t:=0;
while t<>10 do
 begin;
  readln(xt);
  readln(yt);
   if (xt<>x) and (yt<>y) then
    begin;
     xl:=windowwidth+xt*30-300;
     yl:=300-yt*30;
       cross(xl,yl,a);
     inc(t);
    end;
   if (xt=x) or (yt=y) then
    begin;
     xl:=windowwidth+xt*30-305;
     yl:=300-yt*30+4;
      floodfill(xl,yl,clBlue);
     inc(t);
    end;
   if (xt=x) and (yt=y) then
    begin;
     xl:=windowwidth+xt*30-305;
     yl:=300-yt*30+4;
      floodfill(xl,yl,clRed);
       writeln('Ты выиграл!');
        break;
    end;
 end;
if t=10 then
 begin;
  writeln('Ты проиграл!');
   xl:=windowwidth+x*30-305;
   yl:=300-y*30+4;
   floodfill(xl,yl,clRed);
 end;
end.  
4,8(65 оценок)
Ответ:
BAMBELBI013
BAMBELBI013
23.08.2020
#include <iostream>
#include <string>
#include <time.h>
using namespace std;

void main()
 {
srand(time(NULL));
int n,k=0,k1=4;
cin >> n;                         //вводишь количество символов
string *s=new string [n];
for (int i = 0;i < n;++i)
{
while (k == k1)
{
k = rand() % 3;
}
switch (k)
{
case 0:s[i] = '0';cout << s[i];break;
case 1:s[i] ='1';cout << s[i];break;    //вместо 0,1,2 пишешь свой алфавит .
case 2:s[i] ='2';cout << s[i];break;
}
k1 = k;
}
system("pause");
}
4,8(23 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ