Меню
Главная
Случайная статья
Настройки
|
Эта статья тематически связана с вики-проектом «Информационные технологии», цель которого — создание и улучшение статей по темам, связанным с информационными технологиями. Вы можете её отредактировать, а также присоединиться к проекту, принять участие в его обсуждении и поработать над требуемыми статьями.
Untitled
Большое спасибо за включение в статью "Полиноминального (линейного) конгруэнтного метода с переменными коэффициентами".
Приму за честь познакомиться с автором. Мой Email: art_kia@mail.ru
Random Art 09:10, 30 декабря 2013 (UTC)[ответить]
Исправления не в лучшую сторону
На мой взгляд, статья очень сильно обеднела и потеряла ценность после того, как из нее зачем-то убрали:
- пример реализации функции rand() из стандарта ISO/IEC 9899;
- справочные сведения о константах a и c генераторов, используемых в Delphi, MS Visual C/C++ и пр.
- демонстрацию врожденного недостастка ЛКМ, связанного с расположением точек с координатами (r(i),r(i+1)) на отрезках параллельных прямых;
- пример "неудачного" линейно-конгруэентного генератора RANDU: https://ru.wikipedia.org/wiki/RANDU.
Все это занимало в статье очень немного места и непонятно, чего ради удалено.
Кроме того, вызывает очень большие сомнения таблица "хороших констант". Выше по статье со ссылкой на Кнута однозначно сказано: "Линейная конгруэнтная последовательность... периодична с периодом, не превышающим m. При этом длина периода равна m тогда и только тогда, когда..." и т.д. Таким образом, ДПСЧ с m=6075 никак не может иметь периода 2^20, то же касается и остальных строк таблицы.
46.0.164.49 08:04, 10 января 2015 (UTC)drmad[ответить]
- Читаем внимательно, и только потом пишем. 2^20 это не период, а минимальная необходимая ёмкость регистра, при котором не будет переполнения с указанными константами 128.74.247.231 15:33, 17 января 2015 (UTC)[ответить]
Поправил пример реализации из ISO/IEC 9899
Заменил в листинге … % RAND_MAX на … % (RAND_MAX + 1) . Во-первых, в стандарте Last public Committee Draft from April 12, 2011, page 346f . явно указано там 32768. Во-вторых, из логики: RAND_MAX — максимальное достижимое случайное число, а остаток от деления на даёт число в диапазоне от до . 185.59.142.66 09:16, 1 декабря 2017 (UTC)[ответить]
|
|