Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.29;
Скачать: CL | DM;

Вниз

Прога работы с вероятностными выпадениями чисел (0 и 1)   Найти похожие ветки 

 
\/iKTOR   (2007-07-04 12:44) [0]

Всем привет
Если есть у кого готовый исходник, поделитесь пожалуйста.
Нужно генерить случайное выпадение 1 или 0 с регулировкой скорости генерации, подсчета вероятности выпадения(0,5), подсчета последовательных выпаданий одинаковых чисел(максимальное значение), общее количество бросков, ну и в этом духе, для последующей доработки.


 
iXT ©   (2007-07-04 12:48) [1]

Random не устроил?


> с регулировкой скорости генерации

:) это как?


 
Dib@zol ©   (2007-07-04 12:55) [2]


> > с регулировкой скорости генерации
>
> :) это как?


Видимо при поддержке таймера.

{$ TELEPATOR ON}

Походу это какая-то лабораторная / практическая?

{$ TELEPATOR OFF}


 
\/iKTOR   (2007-07-04 12:58) [3]

О_о быстренько вы ответили, спасибо, рандом не пробовал, спасибо за наводку, щас поищу, а то не знаю с какой стороны начать, надеюсь там есть исходник для переработки.
Регулировка скорости, это возможность задавать количество выпадений в единицу времени, в минуту например.
Спасибо за ответ.


 
\/iKTOR   (2007-07-04 13:09) [4]

Random это программа или функция? Если первое, помогите найти пожалуйста, чето я в поиске не рулю :(


 
Плохиш ©   (2007-07-04 13:11) [5]

random + F1


 
Dib@zol ©   (2007-07-04 13:13) [6]

const
 GenSpd = 100;
 MaxRolls = 50;

var
 Probability : Single;
 MaxQueue, tmp, RollCount, Trues : Word;
 buf, lastBuf : Boolean;

...

SetTimer(0, 1, GenSpd, @longInt(RollProc));
RollCount:=0;
MaxQueue:=0;
tmp:=0;
Trues:=0;

...

procedure RollProc;
begin
 Inc(RollCount);
 If RollCount>MaxRolls then begin
   Probability:=100*Trues/MaxRolls;
   KillTimer(0, 1);
   exit;
 end;

 buf:=boolean(Random(2));

 if buf then begin
   inc(Trues);
   if lastBuf then inc(tmp) else begin
     if tmp>MaxQueue then MaxQueue:=Buf;
     tmp:=1;
   end;
 end;
 lastbuf:=buf;
end;

Вот. За работоспособность кода не отвечаю - набрал в блокноте за три минуты. Однако это может послужить примером.


 
\/iKTOR   (2007-07-04 13:18) [7]

Я вообще думал, что нахожусь в разделе для новичков... :(
У меня сейчас перед глазами нет Делфи, я так понимаю там есть вызов такой функции соответствующим нажатием клавиш, я вообще просил исходник готовой програмки для доработки.
:(


 
\/iKTOR   (2007-07-04 13:20) [8]

2 Dib@zol
Огромное спасибо, прийду домой, попробую !!!
Да прибудет Вам удача!


 
Dib@zol ©   (2007-07-04 13:27) [9]


> я вообще просил исходник готовой програмки для доработки.


Дык епт. Вставь ф-цию в любую прогу - заработает[надеюсь]!


> const
>  GenSpd = 100;
>  MaxRolls = 50;
>
> var
>  Probability : Single;
>  MaxQueue, tmp, RollCount, Trues : Word;
>  buf, lastBuf : Boolean;


Это объяви в разделе глобальных переменных модуля (где написано var form1:TForm).


>  SetTimer(0, 1, GenSpd, @longInt(RollProc));
>  RollCount:=0;
>  MaxQueue:=0;
>  tmp:=0;
>  Trues:=0;


Это пропиши гденить в ФормКреэйт.

Всё остальное - это нужная тебе процедура. После того как она отработает [MaxRolls] раз, она вернёт среднюю вероятность выпадения единицы в процентах в переменной Probability, колво выпадений True в переменной Trues, максимальное колво идущих подряд единиц в MaxQueue.

Уф вроде разжевал. Но если таки остались вопросы - ладно спрашивай Это в натуре форум для новичков.


 
Плохиш ©   (2007-07-04 13:27) [10]


> \/iKTOR   (04.07.07 13:18) [7]
> Я вообще думал, что нахожусь в разделе для новичков

Тошнит меня на халявщиков и дармоедов...


 
Dib@zol ©   (2007-07-04 13:29) [11]


> Тошнит меня на халявщиков и дармоедов...


Сказали тебе - НОВИЧКОВ!!! Мы и сами когдато такими были...


 
Плохиш ©   (2007-07-04 13:32) [12]


> Сказали тебе - НОВИЧКОВ

Значит у нас разные понятия "новичков".


 
Johnmen ©   (2007-07-04 13:37) [13]


> Dib@zol ©   (04.07.07 13:29) [11]
> Мы и сами когдато такими были...

Вполне допускаю, что ты когда-то был халявщиком. Но это вовсе не значит, что и все остальные тоже.
И название конфы "Начинающим", а вовсе не "Халява на шару"...


 
Dib@zol ©   (2007-07-04 13:38) [14]


> название конфы


А мож правда поменяем :)))))


 
\/iKTOR   (2007-07-04 13:47) [15]

2 Dib@zol
Еще раз спасибо за уточнения, что касательно фразы "> я вообще просил исходник готовой програмки для доработки." это относилось не к Вам.

Несчет халявы, мы все в той или иной степени халявщики, вы сами писали винду? А Делфи? Я же не просил писать за меня, что мне нужно, я только хотел живой и работоспособный пример, что бы в нем разобраться. Если такой уже есть и не жалко, то почему бы и не дать? Комуто все просто, а кому нужно долго мучаться. Если вам жалко или напряжно, то че писать, я сам могу таких постов кучу написать, и кому это поможет?


 
iXT ©   (2007-07-04 13:49) [16]

Не умение нажать F1 не освобождает от ответственности (впрочем как и не читания др. литературы)

Код [6] разрешить показывать как пример "ТАК НИЗЯ ПИСАТЬ"


 
Dib@zol ©   (2007-07-04 13:52) [17]


> "ТАК НИЗЯ ПИСАТЬ"


Не забывай - писалось с кондачка, в блокноте, за пару минут.


 
Johnmen ©   (2007-07-04 13:54) [18]


> Несчет халявы, мы все в той или иной степени халявщики,
> вы сами писали винду? А Делфи?

Нет, я их не писАл. Но! Я за них заплатил! Улавливаешь?
А ты заплатил за предоставленный код? Нет.
Значит ты - халявщик, а я - нет. Без всякой той или иной степени.
И старайся, когда озвучиваешь своё личное мнение, не употреблять местоимения "мы".


 
Johnmen ©   (2007-07-04 13:55) [19]


> Dib@zol ©   (04.07.07 13:52) [17]
> Не забывай - писалось с кондачка, в блокноте, за пару минут.

Занятное оправдание...


 
Правильный Вася   (2007-07-04 13:57) [20]


>  писалось с кондачка, в блокноте, за пару минут.

медвежья услуга


 
Dib@zol ©   (2007-07-04 14:03) [21]


> Johnmen ©   (04.07.07 13:55) [19]
> Правильный Вася   (04.07.07 13:57) [20]

Понимаете в чём дело - нужен был ПРИМЕР а не Образец Того Как Надо Программировать. А \/iKTOR уже пусть сам в нем разбирается.


 
\/iKTOR   (2007-07-04 14:04) [22]

"Не умение нажать F1 не освобождает от ответственности (впрочем как и не читания др. литературы)"
Затюкали, пристыдили и послали по назначению... спасибо.
Учится на живых примерах получается зазорно.
Чтение другой литературы, - а чтение форума это не литература?
Или была уже такая тема, а я не нашел, так кинули бы ссылочку, я бы и не стал задавать столь простого для вас вопроса.
Ладно, не буду беспокоить, поищу ченибудь для чайников.


 
\/iKTOR   (2007-07-04 14:08) [23]

2 Правильный Вася
Это не медвежья услуга, это посильная помощь, на что я и надеялся, а если есть ляпы в программе, то сам уже буду разбираться, не маленький.


 
Johnmen ©   (2007-07-04 14:15) [24]


> а чтение форума это не литература?

Представь себе - НЕТ.


 
Dib@zol ©   (2007-07-04 14:31) [25]

о, дискуссия продолжается :))


 
iXT ©   (2007-07-04 15:23) [26]


> Или была уже такая тема, а я не нашел, так кинули бы ссылочку,
>  я бы и не стал задавать столь простого для вас вопроса.

А поиск тоже для нас сделан?

> Ладно, не буду беспокоить, поищу ченибудь для чайников.

В библиотеку?


 
Игорь Шевченко ©   (2007-07-04 15:54) [27]


> о, дискуссия продолжается


Ошибаешься.



Страницы: 1 вся ветка

Текущий архив: 2007.07.29;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.021 c
2-1183268850
Kolan
2007-07-01 09:47
2007.07.29
Application.HelpCommand не работает, почему?


15-1183407189
Nic
2007-07-03 00:13
2007.07.29
Гроза фигачит за окном


6-1166707891
XfroSt
2006-12-21 16:31
2007.07.29
работа с IndyUDPServer в потоке Thread


2-1183092871
Novice
2007-06-29 08:54
2007.07.29
программа для работы с базой IB в длинной сети


15-1183111581
Alex7
2007-06-29 14:06
2007.07.29
Один из пользователей на Apple Comp (Mac OS).