I have what I hope is a relatively simple question. I am trying to construct a for loop over a value h from 0 to 1 with loop indices of 0.1 where there value of h will be plugged directly into an expression in the loop.
I tried the following:
dt = 0.1;
t = 0:dt:1;
nt = length(t);
%--------
for h = 1 : nt
Any assistance would be appreciated.

Respuestas (1)

David Goodmanson
David Goodmanson el 16 de Feb. de 2021
Editada: David Goodmanson el 16 de Feb. de 2021

2 votos

Hi Christopher
for h = 0:.1:1
works, although with the interval expressed in floating point, you have to be careful.
for h = (0:10)/10
is safer, since the increment is an integer. If you are plugging the resulting value of h into some expression within the for loop there will be no problems. But if you are comparing h to some other value computed in the for loop, a la
if h == [some computed value]
you of course have to beware of floating point comparisons that might disagree in the 16th decimal place and give you an unwanted answer.

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Productos

Versión

R2020b

Etiquetas

Preguntada:

el 16 de Feb. de 2021

Editada:

el 16 de Feb. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by