How do I create a random double generator where only multiples of .05 are used?
4 次查看(过去 30 天)
显示 更早的评论
I am trying to randomly generate a double, however it needs to be within .25 and .7 and it has to be divisible by .05.
0 个评论
采纳的回答
Geoff Hayes
2014-8-27
Giann - you could create an array of all the numbers within the interval [0.25, 0.7] that are multiples of 0.5, and then just randomly pick one.
% create an array of choices, where each is a multiple of 0.05
choices = [25:5:70]/100.0;
% randomly pick one using *randi*
randomDbl = choices(randi([1 length(choices)],1,1));
If we take your original interval and multiply it by 100, then we get [25,70]. Then we can create the array of choices which is every integer from 25 to 70 using a step size of 5. When we divide the result by 100, we have all doubles within the interval [0.25,0.7] that are multiples of 0.05.
Now we use randi to randomly choose an index between 1 and the number of choices, length(choices), and use that index to pick our "random" double.
Try the above and see what happens!
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!