help I have 40 iteration , 10 iteration of 40 at random to do something and the other 30 iteration for do another thing??
4 views (last 30 days)
Show older comments
maha ismail
on 19 Jan 2015
Commented: Star Strider
on 19 Jan 2015
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 Comments
Accepted Answer
Star Strider
on 19 Jan 2015
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 Comments
Star Strider
on 19 Jan 2015
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.)
More Answers (1)
Marcel
on 19 Jan 2015
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 Comments
Stephen23
on 19 Jan 2015
@ Marcel: you should avoid using i or j as the loop variables, as these are the names of the inbuilt imaginary unit .
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!