10 / 10 / 1
Регистрация: 27.11.2011
Сообщений: 153
|
||||||
1 | ||||||
Random: генерирование разных (неповторяющихся) чисел10.02.2012, 01:11. Показов 54535. Ответов 28
Метки нет (Все метки)
Доброе время суток.Есть 2 события которые рандомно генерируют числа,но только эти числа сходятся,то есть если 1й сгенерировал 3 то и 2й тоже выдаст 3.
0
|
10.02.2012, 01:11 | |
Ответы с готовыми решениями:
28
Через Random получить 3 неповторяющихся числа Random 3 разных случайных числа Генерирование случайных чисел Генерирование и перемешивание чисел |
112 / 112 / 22
Регистрация: 26.12.2008
Сообщений: 166
|
||||||
10.02.2012, 01:12 | 2 | |||||
0
|
10 / 10 / 1
Регистрация: 27.11.2011
Сообщений: 153
|
|
10.02.2012, 01:23 [ТС] | 3 |
всё равно числа одинковые
Добавлено через 3 минуты уже всё сделал)
0
|
112 / 112 / 22
Регистрация: 26.12.2008
Сообщений: 166
|
||||||
10.02.2012, 03:05 | 4 | |||||
хотя, если вы чертовски удачливы, то могут.
1
|
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
|
||||||
10.02.2012, 12:46 | 5 | |||||
Дело в том что рандом - на самом деле не рандом. Это последовательность, которая генерируется в зависимости от текущего времени. А текущее время обновляется раз в 18 мс(если не ошибаюсь). То есть если генерация второй последовательности проиходит раньше чем прошло 18 мс с момента генерации предыдущей(а у тебя так и есть), то последовательности будут равны. Как вариант
1
|
10.02.2012, 12:56 | 6 |
какой ужасный совет.
У рандома есть "правильный" конструктор, которому можно передать например DateTime.Now.Ticks
1
|
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
|
|
10.02.2012, 13:00 | 7 |
Это не совет а просто как вариант
Мне вообще неясно, зачем несколько раз создавать экземпляр рандома.
0
|
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
|
|
10.02.2012, 13:06 | 8 |
turbanoff
1
|
10.02.2012, 13:18 | 9 | |||||
Хм. Вот код
PS. Посмотрел: дефолтный конструктор использует Environment.TickCount
5
|
340 / 340 / 90
Регистрация: 04.03.2010
Сообщений: 648
|
|
10.02.2012, 13:41 | 10 |
1
|
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
|
|
10.02.2012, 16:17 | 12 |
Да, вы правы. Спасибо за исправление.
Разницы, в принципе, никакой. Разве что при частом создании генератора путем использования дефолтного конструктора последовательности будут генерироваться одинаковые каждые 25 дней.
0
|
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 34
|
||||||
29.10.2012, 15:13 | 13 | |||||
Я использую данный класс, который не выдает повторений:
4
|
ilexandr
|
||||||
02.09.2013, 14:01 | 14 | |||||
спасибо за класс, как раз нужен был
класс возвращает случайное число не в промежутке между minValue и maxValue, а от нуля до разницы между ними. Чтобы это исправить измените в методе genList на
|
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
|
|
02.09.2013, 15:46 | 15 |
Здорово этот класс будет работать, если надо генерить неповторяемые числа на всем диапазоне int.
0
|
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 34
|
|
03.09.2013, 11:49 | 16 |
Спасибо ilexandr за исправление. Много где использую данный класс, а ошибки этой не видел.
0
|
0 / 0 / 0
Регистрация: 05.11.2014
Сообщений: 31
|
|
01.06.2015, 20:02 | 17 |
kiss_a,
использовал Ваш класс, но все равно цифры повторяются...
0
|
01.06.2015, 20:38 | 18 | ||||||||||
Попробуйте так.
Класс.
1
|
2 / 2 / 0
Регистрация: 14.07.2016
Сообщений: 36
|
||||||
17.01.2017, 10:12 | 19 | |||||
Просто сделай так
1
|
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
|
|
17.01.2017, 10:22 | 20 |
1
|
17.01.2017, 10:22 | |
17.01.2017, 10:22 | |
Помогаю со студенческими работами здесь
20
Генерирование случайных чисел Генерирование вещественных случайных чисел Генерирование случайных чисел double Массив неповторяющихся чисел Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |