Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.51 MB
Время: 0.026 c
9-1075295877
chuckloon
2004-01-28 16:17
2004.06.06
Посмотрите на мою игрулю ASTROBALL.1.3


6-1082034741
Pul
2004-04-15 17:12
2004.06.06
Кто открыл файл по сети


1-1085325898
vajo
2004-05-23 19:24
2004.06.06
TreeView


6-1082099598
-=Rezya=-
2004-04-16 11:13
2004.06.06
Низкоуровневый сервер


14-1084785001
olookin
2004-05-17 13:10
2004.06.06
Предусматривает ли КЗОТ?