Старый 25.07.2003, 22:01   #1   
Форумец
 
Сообщений: 111
Регистрация: 02.05.2003

alladin вне форума Не в сети
ивиняюсь за глупый вопрос delphi 6

какай функция генерит случайное число?
а то в буке не нашёл а инет(кроме теста будет только утром)
  Ответить с цитированием
Старый 25.07.2003, 22:11   #2   
Форумец
 
Сообщений: 5,001
Регистрация: 08.04.2003
Возраст: 40

zic вне форума Не в сети
random(x) , где x - максимальное значение .
перед первым использование функции вызови randomize;
- это повысит качество генерируемых псевдослучайных чисел .
  Ответить с цитированием
Старый 26.07.2003, 15:49   #3   
Форумец
 
Сообщений: 111
Регистрация: 02.05.2003

alladin вне форума Не в сети
zic

спасибо
  Ответить с цитированием
Старый 29.07.2003, 14:26   #4   
Floating
 
Аватар для Cooch
 
Сообщений: 616
Регистрация: 13.05.2003
Возраст: 39

Cooch вне форума Не в сети
Есть глобальная переменная RandSeed типа LongInt, в которой хранится номер выборки генератора случайных чисел (по которому они генерятся), Randomize заносит в эту переменную псевдослучайное число, которое (как можно заметить в исходнике) - текущее число миллисекунд прошедших с начала суток - в принципе это число можно считать случайным. Поэтому Randomize нужно вызывать не чтобы как сказал <b>zic</b> "повысить качество генерируемых чисел", а чтобы при разных запусках программы у тебя были разные числа (RandSeed хранится где-то в винде, поэтому при разных запусках, если не вызван Randomize, генерируется одно и то же число, в чем можно убедиться с помощью следующего кода:


//если сюда вставить Randomize - числа разные,
//в противном случае - одинаковые
Writeln(Random);
Readln;//для Delphi, а то окно исчезает
  Ответить с цитированием
Старый 29.07.2003, 15:07   #5   
Форумец
 
Сообщений: 5,001
Регистрация: 08.04.2003
Возраст: 40

zic вне форума Не в сети
Cooch
Лень писать было .
Ты бы еще подробнее описал пул системной энтропии .
  Ответить с цитированием
Старый 30.07.2003, 08:24   #6   
Floating
 
Аватар для Cooch
 
Сообщений: 616
Регистрация: 13.05.2003
Возраст: 39

Cooch вне форума Не в сети
Тебе писать лень было, а чувак если не знает random, так отом всю жизнь будет думать, что Randomize - "чтобы повышать качество генерируемых чисел". А в чем это качество измеряется вобще не понятно.
  Ответить с цитированием
Старый 30.07.2003, 11:03   #7   
Форумец
 
Сообщений: 5,001
Регистрация: 08.04.2003
Возраст: 40

zic вне форума Не в сети
Cooch
По моему ,когда для него будет важно, это понимание, он найдет куда более информативные и точные источники чем я, или извини за предположение ты
  Ответить с цитированием
Старый 30.07.2003, 11:26   #8   
Floating
 
Аватар для Cooch
 
Сообщений: 616
Регистрация: 13.05.2003
Возраст: 39

Cooch вне форума Не в сети
Если хочешь - пусть так. Просто у нас препод по информатике был очень настырный - выяснял для чего каждая строчка кода нужна, вот и представь, что спросит он про Randomize, а ты ему - "Это чтобы повысить качество генерируемых чисел", и все, зачетная задача не сдана.
Это я просто объяснил , почему я так подробно про это рассказал. Так что без обид, тема закрыта.
  Ответить с цитированием
Поиск в теме: 



Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind