help I have 40 iteration , 10 iteration of 40 at random to do something and the other 30 iteration for do another thing??
2 次查看(过去 30 天)
显示 更早的评论
help I have 40 iteration , 10 iteration of 40 at random to do something and the other 30 iteration for do another thing?? for t=1:40 take 10 of 40 at random to do something and other 30 for do another thing
0 个评论
采纳的回答
Star Strider
2015-1-19
If you want to choose 10 iterations randomly out of a total of 40, this is one way:
ran10 = randperm(40, 10); % Choose 10 Random Iterations From 40
for k1 = 1:40
if any(ran10 == k1)
fprintf('\n\tDo something randomly at k1 = %d\n', k1)
else
fprintf('\n\tDo something else at k1 = %d\n', k1)
end
end
2 个评论
Star Strider
2015-1-19
I don’t know what 6.5 had, but I assume the problem is with randperm.
This restatement of ran10 should work:
ran10 = fix(40*rand(10,1));
(If this solves your problem, please Accept my Answer.)
更多回答(1 个)
Marcel
2015-1-19
Don't quite understand the question. Can't you just create 2 loops?
For i=1:30
<stuff happens>
end
For i=31:40
<other stuff happens>
end
2 个评论
Stephen23
2015-1-19
@ Marcel: you should avoid using i or j as the loop variables, as these are the names of the inbuilt imaginary unit .
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!