Decimal increments in a for loop
14 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
nth24601
am 21 Okt. 2018
Bearbeitet: Walter Roberson
am 24 Okt. 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 Kommentare
Akzeptierte Antwort
Weitere Antworten (1)
madhan ravi
am 21 Okt. 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 Kommentare
madhan ravi
am 22 Okt. 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
Siehe auch
Kategorien
Mehr zu Matrix Indexing 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!