Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Генерация случайных чисел

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Генерация случайных чисел
Имя
Сообщение << Старые топики   Новые топики >>
Генерация случайных чисел - 2007-10-17 17:54:14.646666   
qimus

Сообщений: 4
Оценки: 0
Присоединился: 2007-10-14 10:29:16.606666
Помагите! Срочно нужен код генерации случаных чисел в заданном диапазоне. Желательно на языке C++ или Delphi. Мог бы сам написать да времени в обрез, как обычно дотянул до последнего, да еще и на работе все дни проподал:( Может у кого есть исходники?
Post #: 1
RE: Генерация случайных чисел - 2007-10-17 18:08:00.443333   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
Посмотри в исходниках код функции Random
Post #: 2
RE: Генерация случайных чисел - 2007-10-17 18:12:14.743333   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
quote:

ORIGINAL: alexbozhko

Посмотри в исходниках код функции Random

В модуле System описана
function Random(const ARange: Integer): Integer; {$IF DEFINED(CPU386)} asm {&nbsp;&nbsp;&nbsp;&nbsp; -&gt;EAX&nbsp;&nbsp;&nbsp;&nbsp; Range&nbsp;&nbsp; } {&nbsp;&nbsp;&nbsp;&nbsp; &lt;-EAX&nbsp;&nbsp;&nbsp;&nbsp; Result&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PUSH&nbsp;&nbsp;&nbsp; EBX {$IFDEF PIC} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PUSH&nbsp;&nbsp;&nbsp; EAX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CALL&nbsp;&nbsp;&nbsp; GetGOT &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MOV&nbsp;&nbsp;&nbsp;&nbsp; EBX,EAX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POP&nbsp;&nbsp;&nbsp;&nbsp; EAX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MOV&nbsp;&nbsp;&nbsp;&nbsp; ECX,[EBX].OFFSET RandSeed &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IMUL&nbsp;&nbsp;&nbsp; EDX,[ECX],08088405H &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INC&nbsp;&nbsp;&nbsp;&nbsp; EDX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MOV&nbsp;&nbsp;&nbsp;&nbsp; [ECX],EDX {$ELSE} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; XOR&nbsp;&nbsp;&nbsp;&nbsp; EBX, EBX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IMUL&nbsp;&nbsp;&nbsp; EDX,[EBX].RandSeed,08088405H &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; INC&nbsp;&nbsp;&nbsp;&nbsp; EDX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MOV&nbsp;&nbsp;&nbsp;&nbsp; [EBX].RandSeed,EDX {$ENDIF} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MUL&nbsp;&nbsp;&nbsp;&nbsp; EDX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MOV&nbsp;&nbsp;&nbsp;&nbsp; EAX,EDX &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POP&nbsp;&nbsp;&nbsp;&nbsp; EBX end; {$ELSEIF DEFINED(CLR)} begin &nbsp; InitRandom; &nbsp; Result := RandomEngine.Next(ARange); end; {$ELSE} &nbsp; {$MESSAGE ERROR 'Random(Int):Int unimplemented'} {$IFEND}
Post #: 3
RE: Генерация случайных чисел - 2007-10-17 18:33:06.643333   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: qimus
Мог бы сам написать да времени в обрез, как обычно дотянул до последнего, да еще и на работе все дни проподал:(

для того чтобы найти формулу задающую последовательность псевдослучайных чисел линейно-конгруэнтного генератора в интернете надо десять минут. это при полном незнании слов "линейно-конгруэнтный". для того, чтобы найти эту формулу у кнута, надо ещё меньше времени. так что, если времени _настолько_ в обрез, то оставляя посты на форумах, ты его неправильно расходуешь.
Post #: 4
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Генерация случайных чисел







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.