simple "While Loop" questions
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Selcuk Fidan
am 21 Okt. 2013
Kommentiert: Selcuk Fidan
am 21 Okt. 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 Kommentare
Akzeptierte Antwort
Image Analyst
am 21 Okt. 2013
Bearbeitet: Image Analyst
am 21 Okt. 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]
Weitere Antworten (1)
FRANCISCO JAVIER
am 21 Okt. 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
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!