selecting the random element by having distance to others
1 次查看(过去 30 天)
显示 更早的评论
This code generates random number
index = randperm(length(1:200),5);
I want to control this generator. Each number have a distance to each others
for example
index=[117 121 15 14 187]
117 and 121 is near to each other also 14 amd 15. This example is not acceptable.
200 divided by 5 equals 40.
First element should be between 1 to 40
Second elemnet should be between 41 to 80
Third elemnet should be between 81 to 120
4th ---> 121 to 160
5th ---> 161 to 200
If the fist element is 39 the second one should not be 42. 39 and 42 is close to each other.
something like this result
index=[2 53 90 140 199]
1 个评论
David Hill
2020-4-28
I have no idea what you are talking about by reading your example. Please explain further.
采纳的回答
Ameer Hamza
2020-4-29
If you want your random numbers to be distributed like this, the randperm is not the correct function. You can use randi() and shift them to your required range.
x = randi([1 40], 1, 5) + (0:40:160);
Result
>> x
x =
27 42 114 158 188
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Random Number Generation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!