Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Генератор случайных чисел.


тт ©   (2004-11-07 23:15:00) 

Это правда, что на разных компьютерах функция random(n:integer) выдает разную
последовательность случайных чисел?
 И если да, то как создать функцию, оченьбыструю, генерирующую одинаковую посл.
на любом комп.
Заранее спасибо.


palva   (2004-11-08 00:11:00) [1]

If False Then False - верное утверждение


GuAV   (2004-11-07 23:54:00) [2]

Defunct ©   (07.11.04 23:48) [3]
Он понял и ответил на вопрос правильно.

Это правда, ... ?
Это неправда.
И еслида, ... ?


Defunct   (2004-11-07 23:53:00) [3]

[1]

PS: добавлю еще, что входной параметр (Number) это номер элемента последовательности.


GuAV   (2004-11-07 23:49:00) [4]

palva ©   (07.11.04 23:43) [2]
Самый быстрый генератор - это счетчик.

Это неправда. Самый быстрый рандомайзер - любая целочисленая переменная ;-)


Defunct   (2004-11-07 23:48:00) [5]

palva ©   (07.11.04 23:43) [2]
> Самый быстрый генератор - это счетчик. Каждое следующее число на единицу больше предыдущего.

Вы вопрос вообще поняли?
Запустите функцию [1] она отвечает на поставленый вопрос полностью.


palva   (2004-11-07 23:43:00) [6]

тт   (07.11.04 23:15)
Это неправда. Чтобы числа были разными нужно предварительно применить Randomize.
Самый быстрый генератор - это счетчик. Каждое следующее число на единицу больше предыдущего.


Defunct   (2004-11-07 23:31:00) [7]

Самый быстрый Random, что мне удалось сделать:
Наслаждайтесь. Последнюю строчку можете выбросить, она там нормировала цвет точки.
Code - слово запуска генератора, от него зависит последовательность генерируемых чисел.

Var Code : Integer = 555;

function MyRandom(Number:Integer):Cardinal;Assembler;
asm
 mov   ecx,  0F7F77B0Ah
 add   eax,  Code

 mul   ecx
 xor   ecx,edx
 mul   ecx

 shr   eax,8   // comment it if no RGB result needed
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо