Программа 11    c 106                        Кирсанов М.Н, 
Графы в Maple
 

Компоненты связности орграфа

>    restart: with(networks):with(LinearAlgebra):

>    n:=6:G:=void(n):

>    addedge([[1,5],[5,3],[3,1],[2,4],[4,6],[6,2],[2,3]],G):

>    m:=nops(edges(G)):

>    draw(Concentric([6,1,2,3,4,5]),G);

>    A:=adjacency(G):# Матрица смежности

>    M:=convert(evalm(add(A^k,k=1..m)),Matrix):

[Maple Plot]

>    for i to n do

>     for j to n do

>       M[i,j]:=M[i,j]*M[j,i];

>     od:

>    od:

>    ###################################################

>    E:={}:

>    for i to n do

>     for j from i+1 to n do

>     if M[i,j]<>0 then E:=E union {{i,j}};end;

>    od:

>    od:

>    G1:=void(n): addedge(E,G1):#Новый неограф

>    Компоненты=components(G1);

>    ЧислоКомпонент=nops(components(G1));

`Компоненты` = {{2, 4, 6}, {1, 3, 5}}

`ЧислоКомпонент` = 2