How to store indices of for loop in cell array after satisfying a condition
1 回表示 (過去 30 日間)
古いコメントを表示
Hi Mathworkers,
I am having problem in storing indices (That will serve as necessary data in my purpose)of for loops in a cell array after satisfying a condition. Here, there is a draft of the code.
for i=8:110
for j=34:110
for k=95:110
EE=myfunction(i,j,k); %% Function may be any
if EE<=5
(#######)
end
end
end
end
#### at this point, I need the cell array which stores the indices i,j,k for whom the condition (EE<=5) is satisfied.
output may be something like this,
9,50,99
9,61,103
..........
10,34,96
10,35,95 etc..
0 件のコメント
採用された回答
KALYAN ACHARJYA
2019 年 5 月 3 日
編集済み: KALYAN ACHARJYA
2019 年 5 月 3 日
l=1;
m={};
for......
if EE<=5
(#######)
m{l}=[i,j,k];
l=l+1;
end
Check this way:
>> m={}
m=
{}
>> m{1}=[1,2,3];
>> m{2}=[2,2,7];
>> m
m=
[1x3 double] [1x3 double]
>>
You can acess any cell array, like
>> m{2}
ans =
2 2 7
One suggestion: If possible reduce the nesting of loops to make the code more efficeint.
2 件のコメント
KALYAN ACHARJYA
2019 年 5 月 3 日
編集済み: KALYAN ACHARJYA
2019 年 5 月 3 日
Adaroni Saikia deb, you can do that.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!