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

Вниз

random(2)*2   Найти похожие ветки 

 
Green-Templar   (2005-10-20 09:59) [0]

Это 2 раза вызов процедуры рэндом или это двойной результат одного вызова?


 
begin...end ©   (2005-10-20 10:06) [1]

Это умножение результата вызова функции random на 2.

Или это умножение двойки, приведённой к типу random, на 2.


 
evvcom ©   (2005-10-20 10:30) [2]


> приведённой к типу random

Что за тип такой? Впервые слышу.


 
begin...end ©   (2005-10-20 10:35) [3]

> evvcom ©   (20.10.05 10:30) [2]

Вроде, никто не запрещает объявить пользовательский тип с таким именем.


 
evvcom ©   (2005-10-20 10:39) [4]

а...а... Вот в каком смысле. :)


 
Anatoly Podgoretsky ©   (2005-10-20 13:29) [5]

В данном случае это Integer, а так random*2 Extended


 
Anatoly Podgoretsky ©   (2005-10-20 13:30) [6]

Для непонятливых, random это не функция.


 
begin...end ©   (2005-10-20 16:00) [7]

> Anatoly Podgoretsky ©   (20.10.05 13:30) [6]

А справка считает иначе...
:-)


 
Green-Templar   (2005-10-20 18:04) [8]

Я так понял, random(2)*2<>1 всегда, верно?


 
cyborg ©   (2005-10-20 21:54) [9]


> [8] Green-Templar   (20.10.05 18:04)

да, будет 0 или 2.


 
evvcom ©   (2005-10-21 09:15) [10]


> да, будет 0 или 2

???

> Я так понял, random(2)*2<>1 всегда, верно?

Если же все таки имеется ввиду функция вычисления (псевдо)случайного числа, то 0<=random(2)<2, тогда 0<=random(2)*2<4. 1 попадает в этот диапазон, поэтому говорить о "всегда" теоретически нельзя. Но на практике это будет почти "всегда" верно, т.к. вероятность выпадания точного значения, равного 1, стремится к 0.


 
Anatoly Podgoretsky ©   (2005-10-21 09:32) [11]

evvcom ©   (21.10.05 09:15) [10]
random(N) имеет тип Integer, поэтому говорить, что почти равного единицы не приходится и для random(2) вероятность выпадения 1 равна 50%


 
evvcom ©   (2005-10-21 09:44) [12]

А.... Точно. Могли бы и в хелпе явно указать тип Random при использовании Range:
In Delphi code, Random returns a random number within the range 0 <= X < Range. If Range is not specified, the result is a real-type random number within the range 0 <= X < 1.
Не пользовался, не приходилось, но почему то думал так. Сорьки...


 
Anatoly Podgoretsky ©   (2005-10-21 09:56) [13]

Я же выше в 5 это указал.
Random(N) эквивалентен TRUNC(Random * N)


 
evvcom ©   (2005-10-21 10:18) [14]


> Я же выше в 5 это указал.

Да. Теперь сообразил, что имелось в виду. Смутил [6] пост. Справка действительно говорит, что это все таки функция из System, но в System определения нет. Значит имеет место шаманство компилятора, который вызывает _RandInt или _RandExt.



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

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

Наверх




Память: 0.49 MB
Время: 0.028 c
4-1126463830
Still Swamp
2005-09-11 22:37
2005.11.13
Разгородить парралельное исполненийе


14-1129839644
vagra
2005-10-21 00:20
2005.11.13
Офигеть!


2-1129888595
Eugene_T
2005-10-21 13:56
2005.11.13
Элементарный вопрос по булевской функции


2-1129564993
V0RoN
2005-10-17 20:03
2005.11.13
WinDir


2-1130324382
Stanislav
2005-10-26 14:59
2005.11.13
Как получить НД при ассинх. выполнении запроса