Sunteți pe pagina 1din 12

Ciocodan Maria

2302_ISE

TEMA 1 – TIA

Să se realizeze un program de calcul utilizând mediul Matlab pentru a realiza parcurgerea grafului din
figură utilizând strategia de căutare în lățime, considerând ca nod de început Nodul 4. Programul trebuie
să afișeze ordinea de parcurgere a nodurilor.

Program:

>> clear all

matriceaIncidenta = zeros(16,16);

a = [1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 5, 6, 7, 8, 8, 8, 8, 9, 10, 10, 11, 11, 11, 12, 13, 14, 15, 16];

b = [2, 3, 4, 1, 5, 6, 7, 1, 8, 1, 2, 9, 10, 2, 3, 4, 11, 12, 13, 5, 5, 14, 15, 16, 8, 8, 8, 10, 11, 11];

c = [];

d = [];

for x = 1:length(a)

matriceaIncidenta(a(x),b(x)) = 1;

end

disp("Matricea incidenta :");

disp(matriceaIncidenta);

start = 4;

frontier = [];

territory = [];

visited = [];

frontier = [frontier, start];

while length(visited) < length(matriceaIncidenta(1,:))

disp("Nod actual :");


disp(frontier(1));

disp("Frontiera actuala :");

disp(frontier);

for y = 1:length(matriceaIncidenta(1,:))

if matriceaIncidenta(frontier(1),y) == 1 && ~ismember(y, visited)

c = [c, frontier(1)];

d = [d, y];

frontier = [frontier, y];

end

end

visited = [visited,frontier(1)];

disp("Noduri vizitate :")

disp(visited)

territory = [territory,frontier(1)];

disp("Teritoriul actual :")

disp(territory)

frontier(1) = [];

disp("Frontiera dupa vizitare nod actual :")

disp(frontier)

end

disp("Teritoriu final : ")

disp(territory)

grafic_rute = digraph(c,d);

p = plot(grafic_rute,'Layout','layered');

Răspuns:

Matricea incidenta :

0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0

1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0

1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0

0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 0 0 0 1 1 1 0 0 0

0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0

0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1

0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0

Nod actual :

Frontiera actuala :

Noduri vizitate :

Teritoriul actual :

Frontiera dupa vizitare nod actual :


1 8

Nod actual :

Frontiera actuala :

1 8

Noduri vizitate :

4 1

Teritoriul actual :

4 1

Frontiera dupa vizitare nod actual :

8 2 3

Nod actual :

Frontiera actuala :

8 2 3

Noduri vizitate :

4 1 8

Teritoriul actual :

4 1 8
Frontiera dupa vizitare nod actual :

2 3 11 12 13

Nod actual :

Frontiera actuala :

2 3 11 12 13

Noduri vizitate :

4 1 8 2

Teritoriul actual :

4 1 8 2

Frontiera dupa vizitare nod actual :

3 11 12 13 5 6

Nod actual :

Frontiera actuala :

3 11 12 13 5 6

Noduri vizitate :

4 1 8 2 3

Teritoriul actual :

4 1 8 2 3
Frontiera dupa vizitare nod actual :

11 12 13 5 6 7

Nod actual :

11

Frontiera actuala :

11 12 13 5 6 7

Noduri vizitate :

4 1 8 2 3 11

Teritoriul actual :

4 1 8 2 3 11

Frontiera dupa vizitare nod actual :

12 13 5 6 7 15 16

Nod actual :

12

Frontiera actuala :

12 13 5 6 7 15 16

Noduri vizitate :

4 1 8 2 3 11 12

Teritoriul actual :
4 1 8 2 3 11 12

Frontiera dupa vizitare nod actual :

13 5 6 7 15 16

Nod actual :

13

Frontiera actuala :

13 5 6 7 15 16

Noduri vizitate :

4 1 8 2 3 11 12 13

Teritoriul actual :

4 1 8 2 3 11 12 13

Frontiera dupa vizitare nod actual :

5 6 7 15 16

Nod actual :

Frontiera actuala :

5 6 7 15 16

Noduri vizitate :

4 1 8 2 3 11 12 13 5
Teritoriul actual :

4 1 8 2 3 11 12 13 5

Frontiera dupa vizitare nod actual :

6 7 15 16 9 10

Nod actual :

Frontiera actuala :

6 7 15 16 9 10

Noduri vizitate :

4 1 8 2 3 11 12 13 5 6

Teritoriul actual :

4 1 8 2 3 11 12 13 5 6

Frontiera dupa vizitare nod actual :

7 15 16 9 10

Nod actual :

Frontiera actuala :

7 15 16 9 10

Noduri vizitate :

4 1 8 2 3 11 12 13 5 6 7
Teritoriul actual :

4 1 8 2 3 11 12 13 5 6 7

Frontiera dupa vizitare nod actual :

15 16 9 10

Nod actual :

15

Frontiera actuala :

15 16 9 10

Noduri vizitate :

4 1 8 2 3 11 12 13 5 6 7 15

Teritoriul actual :

4 1 8 2 3 11 12 13 5 6 7 15

Frontiera dupa vizitare nod actual :

16 9 10

Nod actual :

16

Frontiera actuala :

16 9 10

Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7 15 16

Teritoriul actual :

4 1 8 2 3 11 12 13 5 6 7 15 16

Frontiera dupa vizitare nod actual :

9 10

Nod actual :

Frontiera actuala :

9 10

Noduri vizitate :

4 1 8 2 3 11 12 13 5 6 7 15 16 9

Teritoriul actual :

4 1 8 2 3 11 12 13 5 6 7 15 16 9

Frontiera dupa vizitare nod actual :

10

Nod actual :

10

Frontiera actuala :

10
Noduri vizitate :

4 1 8 2 3 11 12 13 5 6 7 15 16 9 10

Teritoriul actual :

4 1 8 2 3 11 12 13 5 6 7 15 16 9 10

Frontiera dupa vizitare nod actual :

14

Nod actual :

14

Frontiera actuala :

14

Noduri vizitate :

4 1 8 2 3 11 12 13 5 6 7 15 16 9 10 14

Teritoriul actual :

4 1 8 2 3 11 12 13 5 6 7 15 16 9 10 14

Frontiera dupa vizitare nod actual :

Teritoriu final :

4 1 8 2 3 11 12 13 5 6 7 15 16 9 10 14

>> 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0

1 0 0 0

S-ar putea să vă placă și