Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.04.2007, 13:38   #11
Malice
Пользователь
 
Регистрация: 28.01.2007
Сообщений: 27
По умолчанию

Вызови его теперь в цикле раз 50 и посмотри на результат
Malice вне форума Ответить с цитированием
Старый 02.04.2007, 13:50   #12
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

1) если делать это в цикле, то получаем везде 0!
2) в цикле ставим задержку в 1 секунду (sleep(1000))+рандом до 10 и получаем... 0 0 5 0 0 0 0 5 0 0 ... - однозначно не работает
zetrix вне форума Ответить с цитированием
Старый 02.04.2007, 14:10   #13
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,501
По умолчанию

Вот так рандом .

Знаки сложения и вычитания, явно надёжнее будут.
Alar вне форума Ответить с цитированием
Старый 02.04.2007, 15:41   #14
execom
Редкий тунеядец
Форумчанин
 
Аватар для execom
 
Регистрация: 29.10.2006
Сообщений: 595
По умолчанию

Цитата:
Сообщение от Zetrix
1) если делать это в цикле, то получаем везде 0!
2) в цикле ставим задержку в 1 секунду (sleep(1000))+рандом до 10 и получаем... 0 0 5 0 0 0 0 5 0 0 ... - однозначно не работает
1) Да это действительно так, но если в functuion встроить sleep(1), то всё нормально работает, хоть в циклк хоть с задержкой! Вот код, кому не лень погоняйте! Дело в том что sleep - очень сильно далёк от совершенства!
Код:
program Project2;
{$APPTYPE CONSOLE}
uses
  SysUtils;
var
i: integer;
function MainRandom(x:integer):integer;
var
 a,b,c,d:word;
begin
  sleep(1);
  DecodeTime(gettime,a,b,c,d);
  MainRandom:=(a*b*c*d) mod x;
end;
begin
for i:=1 to 1000 do
begin
writeln(MainRandom(12345));
end;
readln;
end.
Цитата:
Сообщение от Alar
Знаки сложения и вычитания, явно надёжнее будут.
Есть лишь один способ проверить, поставить эти знаки... я попробовал! Не буду коментировать... кому интересно попробуйте сами!

Главный минус этой функции в том что скорость работы пониже чем у рандома системного! А так в принципе, ничего, тем более погрешность слипа такова, что система получается достаточно случайной!
execom вне форума Ответить с цитированием
Старый 03.04.2007, 17:57   #15
max4d
 
Регистрация: 29.03.2007
Сообщений: 3
По умолчанию

Огромное всем спасибо , не думал что будет столько ответов, да ещё и с кодом . Спасибо ещё раз, очень помогли мне.
max4d вне форума Ответить с цитированием
Старый 03.04.2007, 18:27   #16
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

генерирование длинных псевдослучайных последовательностей,
повышенной случайности - отдельная задача информатики
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
генератор случайных чисел на С++ ANTI Общие вопросы C/C++ 20 12.04.2009 13:02
Массивы и генератор случайных чисел Psyka Помощь студентам 6 31.07.2008 05:53
выборка случайных чисел furstenberg Общие вопросы Delphi 2 13.01.2008 21:07
генератор случайных чісел Baron Помощь студентам 7 17.11.2007 00:55
Генератор случайных чисел в СМО Shoker Помощь студентам 1 13.10.2007 08:40