Текущий архив: 2004.06.06;
Скачать: CL | DM;
Вниз
Random Найти похожие ветки
← →
новичок_из_сыктывкара (2004-05-26 19:17) [0]помогите пожайлуста, нужно переменной s присвоить значение
random от 1 до 20...подскажите плиз как сделать?
← →
McSimm © (2004-05-26 19:45) [1]s := Random(20)+1;
см. справку
← →
Vasya.ru (2004-05-27 00:10) [2]подскажите плиз как сделать?
Очень просто - на лекции ходить
← →
GEN++ © (2004-05-27 00:47) [3]s := Random(20)+1;
присвоит переменной S "случайное число" в диапазоне 1...21
корректнее будет
while S<1 do s := Random(20);
← →
Gero © (2004-05-27 01:26) [4]
GEN++ © (27.05.04 00:47)
> s := Random(20)+1;
>
> присвоит переменной S "случайное число" в диапазоне 1...21
Почитайте хелп.
> корректнее будет
Не понятно что это будет. И зачем цикл городить, тоже не понятно.
← →
GEN++ © (2004-05-27 08:49) [5]>Gero ©
Согласен, спасибо. Я считал что 0<= random(x) <=X
а он, собака такая, 0<= random(x) <X
← →
Sandman25+1 (2004-05-27 09:02) [6][5] GEN++ © (27.05.04 08:49)
Даже, если так, надо было 1+random(19)
← →
Gero © (2004-05-27 09:05) [7]
> Даже, если так, надо было 1+random(19)
Подумайте над тем, какое будет максимальное число в этом случае,
если максимальное, что сгенерирует random будет 19-1 = 18.
← →
Sandman25+1 (2004-05-27 09:06) [8][7] Gero © (27.05.04 09:05)
Посмотрите, на что я отвечал. Человеку не нужен был цикл, даже если бы он не заблуждался и random работал так, как он предполагал.
← →
Gero © (2004-05-27 09:11) [9]
> Sandman25+1 (27.05.04 09:06)
Вы отвечали на
присвоит переменной S "случайное число" в диапазоне 1...21
корректнее будет
while S<1 do s := Random(20);
?
Тогда прошу прощения.
← →
Sandman25+1 (2004-05-27 09:12) [10][9] Gero © (27.05.04 09:11)
Ничего страшного.
← →
Anatoly Podgoretsky © (2004-05-27 09:28) [11]Random(количестыо чисел ряда) + смещение от нуд=ля, если смещение навно нулю то его можно опустить.
← →
GEN (2004-05-27 12:46) [12]А если диапазон 5..21
тогда while s<5 do s:=random(22);
или в общем случае для диапазона x..y
var
X,Y,s:word;
begin
X:=...
Y:=...
while s<X do random(Y+1);
......
end;
← →
McSimm © (2004-05-27 13:13) [13]LOL
← →
McSimm © (2004-05-27 13:14) [14]
> GEN (27.05.04 12:46) [12]
> А если диапазон 5..21
> тогда while s<5 do s:=random(22);
> или в общем случае для диапазона x..y
s := random(y)+x;
← →
Sergp © (2004-05-27 13:16) [15]
> [12] GEN (27.05.04 12:46)
var
X,Y,s:word;
begin
X:=...
Y:=...
s:= random(Y-X+1)+S;
......
end;
← →
SergP © (2004-05-27 13:17) [16]
> s:= random(Y-X+1)+S;
Ошибся...
s:= random(Y-X+1)+X;
← →
McSimm © (2004-05-27 13:18) [17]прошу прощения, конечно
s := random(y-x+1)+x;
← →
nitrino (2004-05-27 14:45) [18]а вообще есть более удобная функция RandomRange
← →
Prohodil Mimo © (2004-05-27 16:36) [19]A vnutri nejo tot zhe random(y-x+1)+x; ? :o)
← →
GEN++ © (2004-05-27 19:05) [20]>McSimm
s := random(y-x+1)+x; пожалуй это посимпатичнее будет чем
while s<X do random(Y+1);
Так что теперь есть минимум 2 способа решения задачи, а в наш век
ограниченных возможностей - это прямо роскошь.
← →
Lessa (2004-05-27 19:30) [21]проще присвоить
a:=random(19)+1;
← →
СатирЪ © (2004-05-27 19:43) [22]не забудьте в секции инициализации проинициализировать генератор случайных чисел randomize;
Страницы: 1 вся ветка
Текущий архив: 2004.06.06;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.031 c