Skipping for loop with continue does not work

1 Ansicht (letzte 30 Tage)
Will
Will am 7 Apr. 2020
Kommentiert: Walter Roberson am 7 Apr. 2020
Hi, I'm trying to skip the iteration to the next one if i is equal to 1, but my code does not work:
for v = 0.5:0.05:1.5
if (v == 1)
continue;
end
disp(v);
end
the out is:
0.5000
0.5500
0.6000
0.6500
0.7000
0.7500
0.8000
0.8500
0.9000
0.9500
1.0500
1.1000
1.1500
1.2000
1.2500
1.3000
1.3500
1.4000
1.4500
1.5000
which contains also 1 !!!
How can I fix it ?
  3 Kommentare
Will
Will am 7 Apr. 2020
Sorry, you are right. The code works ?
Walter Roberson
Walter Roberson am 7 Apr. 2020
However if you had asked to match (say) 1.15 then there might not have been a match, because 0.05 is not exactly representable in MATLAB, and 0.5:0.05:1.5 accumulates round-off error.
v = (50:5:150)/100
would have different round-off error.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Walter Roberson
Walter Roberson am 7 Apr. 2020

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by