![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
randomize; [D6, 2000]
Officeman © (2006-02-13 07:44:00)1) подскажите как создать РАНДОМ [1..3]
как там поётся в песне, так?
var r:integer;
randomize;
r:=random(4);
как исключить выпдение НОЛЯ
продовал так:
if r=0 then r:=3;
но это нарушает концепцию РАНДОМА.
1)Подскажите как создать РАНДОМ [1..3] !!!!!
2)Выпадение подряд одного и тогоже числа возможно не более 4 раз.
С уважением, Officeman
Officeman (2006-02-14 08:41:00) [1]to evvcom © [6]
в принципе к этому и стремлюсь.
написана соотвествующая программа.
вручную забивать 1000 клеток обломно.
нужен нормальный генератор случайных чисел(гсч).
to Marser © (13.02.06 10:20) [5]
втоих словах правда есть. только не рандомайз чаще делать нужно
а интервал времени между гсч событиями.
например при такой коде:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
randomize;
rand:=RandomRange(1,4);
Memo1.lines.add(inttostr(rand));
timer1.Interval:=RandomRange(150,300);
end;
получается чтото более похожее на правду.
если итервал timer1 сделать например 100 или 50.
тогда поулчится нечто похожее на "текст ответа [3]".
Officeman (2006-02-14 08:41:00) [2]to evvcom © [6]
в принципе к этому и стремлюсь.
написана соотвествующая программа.
вручную забивать 1000 клеток обломно.
нужен нормальный генератор случайных чисел(гсч).
Буду признателен за помощь:
mailto:zeram@hotmail.ru
to Marser © (13.02.06 10:20) [5]
втоих словах правда есть. только не рандомайз чаще делать нужно
а интервал времени между гсч событиями.
например при такой коде:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
randomize;
rand:=RandomRange(1,4);
Memo1.lines.add(inttostr(rand));
timer1.Interval:=RandomRange(150,300);
end;
получается чтото более похожее на правду.
если итервал timer1 сделать например 100 или 50.
тогда поулчится нечто похожее на "текст ответа [3]".
Anatoly Podgoretsky (2006-02-13 14:27:00) [3]Officeman (13.02.06 07:44)
RandomRange
Anatoly Podgoretsky (2006-02-13 14:26:00) [4]Marser © (13.02.06 10:20) [5]
Развеселил
evvcom (2006-02-13 10:26:00) [5]Красное, черное и зеро? :) У них вероятности другие, рулетка, блин... :)
Marser (2006-02-13 10:20:00) [6]Randomize надо чаще делать.
_RusLAN (2006-02-13 10:15:00) [7]Создай массив из чисел которые могут выпадать
и рандомом выбирай индекс масива
если какое-то число выпало подряд четыре раза, изымай его из массива
Offceman (2006-02-13 09:05:00) [8]to TUser, результат таков:
1
1
2
1
2
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
проверка на 4 подряд не работает.
TUser (2006-02-13 08:38:00) [9]> 1)Подскажите как создать РАНДОМ [1..3] !!!!!
Random(2)+1
> 2)Выпадение подряд одного и тогоже числа возможно не более 4 раз.
Проверять, сколько раз уже выпало.
var count: integer;
last, r: integer;
begin
randimize;
Count:=0;
last:=MaxInt;
for .... do begin
r:=Random(2)+1;
if r = last then inc (cuont) else count:=0;
if count = 5 then begin
while r = last do r:=random(2)+1;
count:=0;
end;
last:=r;
// do anything
end;
end;
PZ (2006-02-13 08:21:00) [10]Random(3)+1