From for to While loop

3 Ansichten (letzte 30 Tage)
Astals
Astals am 24 Nov. 2020
Bearbeitet: Astals am 24 Nov. 2020
Hello! Could someone please help me to convert this for loop to a while loop?

Akzeptierte Antwort

Rik
Rik am 24 Nov. 2020
Your original for-loop probably was incorrect. And why do you want a while loop? You already know how many iterations you want.
A = (1:10)';
B= rand(10,2);
C= A; C(:,2:3)= B;
Y= B(:,2);
X= B(:,1);
for i= 1:size(B,1)
% ^ are you sure that shouldn't be C instead?
C(i,4)= sin(C(i,3)/sin(C(i,2)));
end
In this case you can avoid the loop entirely:
C(:,4)=sin( C(:,3) ./ sin( C(:,2) ) );
And are you sure you mean this, and not this?
C(:,4)=sin( C(:,3) ) ./ sin( C(:,2) );

Weitere Antworten (1)

Steve Eddins
Steve Eddins am 24 Nov. 2020
Here is one way to convert a typical MATLAB for loop to a while loop:
for i = 1:N
...
end
i = 1;
while i <= N
...
i = i+1;
end
Documentation links: for loop, while loop
  2 Kommentare
Steve Eddins
Steve Eddins am 24 Nov. 2020
Can you show us specifically what you tried?
Rik
Rik am 24 Nov. 2020
Now deleted comment:
I tried that, but I couldn't get the whole matrix to show.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by