simple "While Loop" questions
8 views (last 30 days)
Show older comments
Selcuk Fidan
on 21 Oct 2013
Commented: Selcuk Fidan
on 21 Oct 2013
Can anyone tell me why this while loop doesn't give me what I want? I want to get simple values such that starting from 0.001 to 0.01 with increment 0.001,0.01 to 0.1 with increment of 0.01,0.1 to 1 with increment 0.1, and 1 to 10 with increment 1. Second question of mine, when I have vsl ==0.1, why it doesn't go into the if loop? What am doing wrong? Thank you!
%% Calculate the gas fraction vsl = 0.001; vsl1 = vsl; vslSave = [];
while vsl<=10
if vsl >=0.001 && vsl<=0.01
increment = 0.001;
elseif vsl >=0.01 && vsl< 0.1
increment = 0.01;
elseif vsl >=0.1 && vsl<=1.0
increment = 0.1;
else
increment = 1;
end
if (vsl==0.1)
increment = 0.1;
end
vsl = vsl + increment;
vslSave = [vslSave;vsl];
end
vslSave = [vsl1;vslSave];
0 Comments
Accepted Answer
Image Analyst
on 21 Oct 2013
Edited: Image Analyst
on 21 Oct 2013
vsl will never equal 0.1. See the FAQ: http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F And you don't need all those double ranges - checking if it's in the middle. Just check if it's less than the number - it will go into the first one it meets the criteria for.
% Calculate the gas fraction
vsl = 0.001;
vsl1 = vsl;
vslSave = [];
while vsl<=10
if vsl < 0.01
increment = 0.001;
elseif vsl < 0.1
increment = 0.01;
elseif vsl < 1.0
increment = 0.1;
else
increment = 1;
end
vsl = vsl + increment;
vslSave = [vslSave;vsl];
end
vslSave = [vsl1;vslSave]
More Answers (1)
FRANCISCO JAVIER
on 21 Oct 2013
function [vslSave]=prueba(x)
vsl=x; vslSave=[];
while vsl<=10
if vsl >=0.001 && vsl<=0.01
increment = 0.001;
elseif vsl >=0.01 && vsl< 0.1
increment = 0.01;
elseif vsl >=0.1 && vsl<=1.0
increment = 0.1;
else
increment = 1;
end
if (vsl==0.1)
increment = 0.1;
end
vsl = vsl + increment;
vslSave = [vslSave; vsl];
end
end
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!