why "while loop" is not working?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Artur Iskhakov
am 3 Jul. 2020
Kommentiert: Artur Iskhakov
am 3 Jul. 2020
Hi! My task is to find all nodes that go after node "3" in directed graph "gr". In order to make it I used the "successors" function and while loop. But while loop is not working. Can anybody help me please? Here's the code:
clc;
A = [1 2 3 4 5 6 7];
B = [2 3 4 5 6 7 8];
w = [0 0 1 0 0 0 0];
gr = digraph (A,B, w);
N = successors (gr,4)
i=0;
while TF == 0
TF = isempty (N);
N = successors (gr, N);
i = i + 1;
N(i)= N;
end
2 Kommentare
Akzeptierte Antwort
Vashist Hegde
am 3 Jul. 2020
To check what was going on, I wrote a small while loop on my own -
This while loop is also not working. The similarity between this code and your code is that you have not initialized TF. so when I put break points, and ran this stepwise, I found that when a variable is not initialized and is used, it is by default set to 1.
So TF has a value of 1, and hence the loop is never entered.
I suggest you to initialize TF.
while TF==0
disp('hi');
TF=1;
var = randi(5);
if var==4
TF=3;
end
end
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Construction finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!