Decimal increments in a for loop
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
nth24601
el 21 de Oct. de 2018
Editada: Walter Roberson
el 24 de Oct. de 2018
Hello, I am trying to make a for loop in which i goes up by decimal increments and for each value of i (1, 1.1, 1.2, 1.3) a different value for a function is calculated and stored. I am aware that there are such threads already existing but none of them actually seem to solve the problem. My code so far looks like that:
z = 1:0.1:100;
for i=1:length(z)
if i<10
y(:,i) = function of i
elseif (10<=i)&&(i<50)
y(:,i) = another function of i
elseif (50<=i)&&(i<=100)
y(:,i) = another function of i
end
end
The problem with that is that i does not actually go up by 0.1, it goes up by 1, and the function calculates values for i equal to 1,2,3,... etc I want it to take i=1, calculate the value of y for that, then take i=1.1, calculate the value for that etc.
0 comentarios
Respuesta aceptada
Más respuestas (1)
madhan ravi
el 21 de Oct. de 2018
z = 1:0.1:100;
for i=1:length(z)
if z(i)<10
y(:,i) = function of i
elseif (10<=z(i))&&(z(i)<50)
y(:,i) = another function of i
elseif (50<=z(i))&&(z(i)<=100)
y(:,i) = another function of i
end
end
3 comentarios
madhan ravi
el 22 de Oct. de 2018
You can’t index 0.1 as an index , See indexing in MathWorks Page you will understand only an integer can be used as an index not a float
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!