


Помогите реализовать задачу на JS. Срочно.
Могу скинуть реальный текст задачи т. к тут не все условия прописаны. Помогите.
Если готового датчика случайных чисел (см. предыдущую задачу) в роспоряжении программиста нет, то он может самостоятельно определить датчик в программе. Не вдаваясь в довольно сложную теорию, опишем один из таких датчиков (см. [35]). Зафиксируем некоторые натуральные a, c, m, s0 такие, что m-наибольшее из них. Определим последовательность неотрицательных целых чисел s0, s1, ..следующим правилом: sn равно остатку от деления суммы asn-1+c на m, и вместе с последовательностью s0, s1, ..рассмотрим последовательность (n = 0, 1, ..). При удачном выборе a, c, m, s0 последовательность r0, r1, ..будет хорошо имитировать последовательность равномерно распределенных в интервале (0, 1) случайных чисел. Одним из таких воборов оказывается следующий:
1) m = 2sk, где k берется настоль большим, насколько это возможно (надо иметь в виду, что последовательность s0, s1, ..равно как и последовательность r0, r1, ..будет периодической с периодом 2sk; при небольших значениях k периодичность будет слишком заметной).
2) При делении a на 8 должен получаться остаток 5. Кроме этого, требуется, чтобы выполнялось .
3) Число с должно быть нечетным; при этом желательно, чтобы выполнялось приближенное равенство
4) Число s0 можно выбрать произвольно в диапозоне от 0 до m-1.
В связи со сказанным предпологаются следующие задания:
а) Подобрать несколько вариантов троек a, c, m, удовлетворяющих условию 1) - 3).
б) Найти еще какое-нибудь соображение, позволяющее хорошо имитировать случаность, и на его основе описать новый датчик.
в) Пользуясь различными датчиками, среди которых должны быть датчики, построеные по предложенной выше схеме с различным выбором a, c, m, s0, и "самодельные" датчики, построеные на других соображениях, требуется провести эксперименты, описанные в предыдущей задаче.
Спасибо за интересную лекцию. А есть такая же про поиск коллизий непрямоугольных объектов, способных вращаться?
Без верхних-нижних индексов понять что-либо сложно, но Вы попробуйте погуглить "мультипликативный датчик случайных чисел на JS" и "Линейный конгруэнтный метод на JS" и их английские варианты.
Например, вот:
http://stackoverflow.com/questions/17625232/custom-linear-congruential-generator-in-javascript