Decimal increments in a for loop
9 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
採用された回答
その他の回答 (1 件)
madhan ravi
2018 年 10 月 21 日
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 件のコメント
madhan ravi
2018 年 10 月 22 日
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
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!