From for to While loop

2 visualizzazioni (ultimi 30 giorni)
Astals
Astals il 24 Nov 2020
Modificato: Astals il 24 Nov 2020
Hello! Could someone please help me to convert this for loop to a while loop?

Risposta accettata

Rik
Rik il 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) );

Più risposte (1)

Steve Eddins
Steve Eddins il 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 Commenti
Steve Eddins
Steve Eddins il 24 Nov 2020
Can you show us specifically what you tried?
Rik
Rik il 24 Nov 2020
Now deleted comment:
I tried that, but I couldn't get the whole matrix to show.

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by