Это сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.

Справочник случайных чисел

Недавно я узнал, причём из художественной книги, что в двадцатом веке вовсю печатались и использовались бумажные справочники случайных чисел с заданными характеристиками.

Если задуматься, это закономерно — вычислительная техника была распространена слабо, а генерация случайных чисел по определённому закону без её использования, задача не из простых. Хороший источник таких чисел — разнообразные физические шумы, которые классифицируются по «цветам» — белый, фиолетовый, красный и так далее.

Один из самых последних справочников случайных чисел издал Джордж Марсалья в 1995 году на компакт-диске. Для его генерации использовался белый шум диодной цепи, скомпонованный с обработанной рэп-музыкой. Это сочетание сам Джордж неполиткорректно назвал «чёрно-белым шумом».

Разворот со случайными числами из ГОСТа 11.003—73 «Прикладная статистика. Равномерно распределённые случайные числа»

Например, в ГОСТе 1973 года дан ряд случайных чисел и описана методика их использования, а так же несколько примеров, где они могли бы пригодиться. Вот один из них:

Пример случайного отбора изделий в выборку при статистическом контро­ле качества продукции. Партия состоит из 90 изделий. Требуется случайным образом отобрать для контроля пять изделий.

Решение. Пронумеруем все изделия партии номерами от 1 до 90. Соста­вим достаточно короткий ряд случайных чисел в диапазоне от 1 до 100. Отбро­сим из этого ряда все числа, большие 90. Выберем из оставшихся первые пять различных чисел — это будут номера изделий для контроля.

3 комментария
Михаил Иванов 3 мес

Что-то я не осилил этот алгоритм:)

Пронумеруем все изделия партии номерами от 1 до 90.

Оке, это понятно.

Соста­вим достаточно короткий ряд случайных чисел в диапазоне от 1 до 100.

Это непонятно. Сколько чисел должно быть в этом ряду? 100? Если 100 — то какая тут случайность, это же просто асе подряд числа от 1 до 100.

Отбро­сим из этого ряда все числа, большие 90.

А зачем мы тогда брали числа до 100? Почему сразу не взяли до 90?

Выберем из оставшихся первые пять различных чисел — это будут номера изделий для контроля.

Так это же будут числа 1,2,3,4 и 5, т. е. просто возьмём первые пять изделий. Или нет?

Евгений Степанищев 3 мес

Сколько чисел должно быть в этом ряду? 100? Если 100 — то какая тут случайность, это же просто все подряд числа от 1 до 100.

Видимо не особо важно. Не понял почему это все числа подряд, если сказано взять случайные числа.

А зачем мы тогда брали числа до 100? Почему сразу не взяли до 90?

Потому что в таблицах числа от 0 до 99. «Если нужно получить случайные числа в интервале от 1 до 100, то в ряду чисел из интервала от 0 до 99 надо число 00 рассматри­вать как изображение числа 100» — это из ГОСТа.

Михаил Иванов 3 мес

Не понимаю.

Не понял почему это все числа подряд, если сказано взять случайные числа.

Так а сколько этих чисел надо взять? Если нужно взять 100 чисел от 1 до 100, то это будет 100 чисел подряд, от 1 до 100, какая тут случайность?

А если нужно взять не 100 чисел, а допустим 10, то какие брать-то? Это же сама задача и есть — как-то взять несколько случайных чисел.

Евгений Степанищев 3 мес

Так а сколько этих чисел надо взять? Если нужно взять 100 чисел от 1 до 100, то это будет 100 чисел подряд, от 1 до 100, какая тут случайность?

Откуда такой вывод? Давайте я вам прямо сейчас нагенерю сто случайных чисел от единицы до 100: 58 38 97 4 28 27 1 36 87 44 7 83 81 96 7 5 32 79 13 1 70 83 80 83 33 100 100 33 45 34 59 36 87 19 49 48 94 20 67 32 56 32 41 15 10 79 47 76 18 16 88 56 76 49 97 12 18 35 40 64 16 97 13 91 23 78 65 100 94 17 64 65 10 4 25 47 25 68 88 100 69 91 99 80 31 24 29 14 39 86 42 7 86 71 7 27 36 67 37 34.

то какие брать-то?

В каком смысле какие? Случайные из таблицы.

Михаил Иванов 2 мес

1) Т. е. вы предположили, что числа могут дублироваться. Ну хорошо, пусть так.

2) А как вы нагенерировали эти случайные числа? В этом же и состоит суть задачи — как-то получить случайные числа.

3) Зачем генерировать числа больше 90, если их всё-равно отбрасывать?

4) Зачем генерировать больше чисел, чем нужно? В примере нужны 5 чисел. Почему не сгенерировать ровно 5 чисел, раз уж мы каким-то образом умеем их генерировать в пункте 2?

5) И наконец — а как всё это связано с таблицей? В какой момент таблица-то используется?

Евгений Степанищев 2 мес

Я ничего не понял. В таблице случаные числа. Их надо взять из таблицы.