Hello! Could someone please help me to convert this for loop to a while loop?

 Akzeptierte Antwort

Rik
Rik am 24 Nov. 2020

0 Stimmen

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

0 Stimmen

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 Hilfe-Center und File Exchange

Tags

Gefragt:

am 24 Nov. 2020

Bearbeitet:

am 24 Nov. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by