В этой статье, я покажу простой рецепт для того, чтобы создать собственный генератор псевдослучайных чисел (ГПСЧ) на базе известного алгоритма XorShift256. Данный генератор потребует минимального набора операций, а также задания нескольких констант, инициализирующих ГПСЧ (параметры называются по четырем первым буквам латинского алфавита, и хранятся в виде статического массива ulong[4]). Константы для генератора надо либо подбирать […]
Метка: псевдослучайные числа
Алгоритм для «перемешивания» массива случайным образом
Этот рецепт продемонстрирует вам алгоритм, работающий с любым диапазоном ввода и генерирующий новый диапазон, в котором элементы переставлены («перемешаны») случайным образом. Алгоритм, в контексте данного рецепта, обозначает нечто такое, что манипулирует диапазонами (т.е практически то же понимание термина «алгоритм», которое и используется в D) и ни в коем случае не намекает на традиционный смысл понятия […]
Idiomatic D. Генератор псевдослучайных чисел времени компиляции [перевод]
Очередной перевод идиомы (на самом деле, не совсем идиомы, чуть ниже поймете почему) с сайта Idiomatic D, в котором показан довольно интересный код, который смело можно отнести в раздел невменяемого программирования из-за очень нестандартного подхода автора к решению совсем нетривиальной задачи. Я хочу познакомить вас с этим шедевром программистской мысли, который реально удивит вас тем, […]
Генерирование массива псевдослучайных чисел
В этом рецепте я расскажу как получить массив фиксированного размера, который заполнен псевдослучайным числами, при этом не будет использован стандартный подход с проходом по созданному массиву с помощью цикла или функциональные шаблоны из стандартной библиотеки. Таким образом, в этой статье я напомню вам про то, что в D есть кое-что интересное, хотя и не столь […]