MATLAB Answers

From for to While loop

3 views (last 30 days)
Astals
Astals on 24 Nov 2020
Edited: Astals on 24 Nov 2020
Hello! Could someone please help me to convert this for loop to a while loop?

  0 Comments

Sign in to comment.

Accepted Answer

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

  0 Comments

Sign in to comment.

More Answers (1)

Steve Eddins
Steve Eddins on 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 Comments

Steve Eddins
Steve Eddins on 24 Nov 2020
Can you show us specifically what you tried?
Rik
Rik on 24 Nov 2020
Now deleted comment:
I tried that, but I couldn't get the whole matrix to show.

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!