Создание массива из случайных целых чисел из определённого промежутка. Числа в массиве не должны повторяться - VB
Формулировка задачи:
Здравствуйте! Недавно занялся Visual Basic'ом и столкнулся с такой проблемой.
Дан массив x(100). Ему нужно присвоить целые значения от 0 до 99, но таким образом, чтобы они были разбросаны в случайном порядке и не повторялись. Ну, например, x(0) = 21, x(1) = 16, x(2) = 95, x(3) = 50 и так далее. Но, ещё раз скажу, числа не должны повторяться.
Сделал вот такой код:
Код, по идее, должен быть рабочий, но проблема в том, что значения подбираются очень долго. Когда массив состоит из малого количества значений, то такой код подойдёт, но для большого массива - нет.
Можно ли как-то проще проверить уникальность всех значений массива?
Решение задачи: «Создание массива из случайных целых чисел из определённого промежутка. Числа в массиве не должны повторяться»
textual
Листинг программы
Private Sub Комманда1_Click() Dim i&, j&, a&(1 To 100) Randomize For i = 1 To 100 j = Int(Rnd * i + 1) If i <> j Then a(i) = a(j) a(j) = i - 1 Next i End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д