Мне нужно генерировать случайные числа в группах: 100, 500, 1000 и 10000 номеров униформы и гауссиан. Это необходимо для создания некоторых гистограмм и других статистических материалов.Алгоритм случайных чисел
Условие не в том, чтобы использовать нативную случайную функцию python, поэтому я думал использовать этот метод (линейный конгруэнтный генератор): Xn+1 ≡ (aXn + c) mod m
. Здесь мне нужны 4 переменные. Может кто-нибудь, пожалуйста, скажите мне, как я могу реализовать этот алгоритм? Я предполагаю, что м переменная первое время
Сомневаюсь, что вы найдете хороший линейный конгруэнтный генератор с m = 100. Вы должны смотреть на генераторы с гораздо большим m. Еще лучше, если у вас есть время, используйте Mersenne Twister. Затем используйте другие методы, чтобы получить окончательный результат в единый диапазон, который вы хотите, или преобразовать выходные данные вашего генератора в гауссианцев (здесь были разные предыдущие вопросы по подобным темам, поэтому посмотрите их). –
я попытался это: п = 1 с = 3 х = 0 м = 100 для г в диапазоне (100): х = (а * х + с)% м –
вы так много Дэвида , я выберу –