Converting a for loop to a while loop

13 visualizaciones (últimos 30 días)
Samantha Farmer
Samantha Farmer el 1 de Oct. de 2018
Comentada: madhan ravi el 12 de Oct. de 2018

I'm trying to convert this for loop into a while loop but keep getting the x value of the while loop as zero when it should be random values.

    % code
x=0; 
y=randi(100,1,5); 
for i = 1:5     
    x=x+y(i); 
end 

This is what I have:

    % code
 x=0;
 y=randi(100,1,5);
 while i<6 && i>0
     x=x+y(i);
    i=i+1;
 end

Not sure how to get the x value to 'work'

Respuestas (2)

madhan ravi
madhan ravi el 1 de Oct. de 2018
Editada: madhan ravi el 1 de Oct. de 2018
x=zeros(1,5);
y=randi(100,1,5);
i=1
while i<6
x(i)=x(i)+y(i)
i=i+1;
end
  3 comentarios
Samantha Farmer
Samantha Farmer el 11 de Oct. de 2018
I've been understanding my hw for a little bit :)
madhan ravi
madhan ravi el 12 de Oct. de 2018
Ok if it worked make sure to accept the answer as well :)

Iniciar sesión para comentar.


Jan
Jan el 1 de Oct. de 2018
The problem is, that i has not been initialized before the while loop. Then i is defined as sqrt(-1). See madhan ravi's answer, where i=1 is defined before the loop.

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by