Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
Пытаюсь сгенирить билеты к экзамену. есть 40 вопросовю Надо по два вопроса в билет, но чтобы вопросы не повторялись. Написал прогу. Хрен. Вначале она дублирования у меня подавляет, а потом зацикливается.... Как генирить случайные числа без повторов? Образец моей проги: Dim NumberTicket As String Dim iCount, jCount, kCount, lCount, mCount As Integer Dim NumRnd As Integer Dim NumRndCntrl(0) As Integer For iCount = 1 To GenCmbBox.Text() / GenValCmbBox.Text() NumberTicket = "" For jCount = 1 To GenValCmbBox.Text() kCount = 0 mCount = 0 Randomize() While kCount = 0 NumRnd = CInt(Int((GenCmbBox.Text() * Rnd()) + 1)) For lCount = 0 To iCount - 1 If NumRnd = NumRndCntrl(lCount) Then mCount = 1 Exit For End If Next If mCount = 1 Then kCount = 0 Else kCount = 1 End If End While NumberTicket &= ", " & NumRnd ReDim Preserve NumRndCntrl(UBound(NumRndCntrl) + 1) NumRndCntrl(iCount) = NumRnd Next TickTxtBox.Text() &= "Билет №" & iCount & ": " & NumberTicket & "; " Next ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2004, 12:56 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
А как в жизни делается? Берутся вопросы, перемешиваются и вытаскиваются по одному. Надо использовать алгоритм перемешивания над массивом номеров вопросов. Например такой: проходим по всем элементам массива и меняем текущий элемент со случайно выбранным другим элементом. После того как массив будет перемешан, берем элементы по порядку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2004, 19:53 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
Думал над этим. Боюсь что он будет мешать так же как и генерить.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 11:53 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
случайным образом выбираем билет и перекладываем его из исходной кучи (массива) в другую кучу (массив). Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 12:29 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
C# без разницы... Просто хотелось через Rnd генерить... Так то понятно.... Не уж то никак повторения не исключить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 13:59 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
...да и не билеты надо тянуть, а генирить эти билеты в зависимости от числа вопросов вообще и числа вопросов в билете... Билеты тянуть уже будут другие, на экзамене ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 14:04 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
Можно конечно урезать массив-источник, это безусловно исключит повторения... Но... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 14:11 |
|
||
|
Как сгенерироватьь неповторяющиеся случайные числа?
|
|||
|---|---|---|---|
|
#18+
так вторая куча и будет случайным образом перемешанные номера вопросов. и сдавай оттуда по порядку по 2 (3, 4, ..) вопроса на билет. а 32 вопроса(преферансная колода) можно заменить на любое число, кратное количеству вопросов в билете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 14:13 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32849697&tid=1437552]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 354ms |

| 0 / 0 |
