Dim tk(19), i As Integer
Randomize()
For i = 0 To 19
tk(i) = 587 + Rnd() * 29
Next
------解决方案--------------------
那根本不是Rnd产生数字的逻辑,你是把基本的逻辑给搞错了。
如果只是为了打乱次序,你可以先for循环生成一组连续的数字,然后以For循环使用Rnd来打乱(对调)次序。这才是你所说的那种逻辑结果。
如果连初始模型的认识描述都完全是南辕北辙,你自然就制造车更多错误的问题来。
------解决方案--------------------
Dim tk() As Integer = Enumerable.Range(587, 29).OrderBy(Function(x) Guid.NewGuid()).Take(20).ToArray()