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

Вниз

RandomRange   Найти похожие ветки 

 
DFT   (2008-09-25 23:47) [0]

Добрый вечер!
Вот обнаружил для себя, что функция RandomRange работает не так как должна.

выдержка из справки:
RandomRange returns a random integer from the range that extends between AFrom and ATo (inclusive).

однако мои опыты показывают, что она возвращает число из диапазона от (AFrom) до (ATo-1).

Может здесь есть какая-то процессорная зависимость?


 
Медвежонок Пятачок ©   (2008-09-25 23:52) [1]

Caption := IntToStr(RandomRange(1,1));


 
DFT   (2008-09-25 23:55) [2]

Частный случай я оспаривать не стану


 
Медвежонок Пятачок ©   (2008-09-25 23:56) [3]

А вообще вот оно
function RandomRange(const AFrom, ATo: Integer): Integer;
begin
 if AFrom > ATo then
   Result := Random(AFrom - ATo) + ATo
 else
   Result := Random(ATo - AFrom) + AFrom;
end;

Дальше смотрим что возвращает рандом


 
Palladin ©   (2008-09-26 00:01) [4]

никакой зависимости нет
просто ошибка. либо в справке либо в функции


 
DFT   (2008-09-26 00:14) [5]

Да, действительно ошибка в описании именно этой фукции.

Описание функции Random, более похоже на правду

function Random [ ( Range: Integer) ];

In Delphi code, Random returns a random number within the range 0 <= X < Range


 
Германн ©   (2008-09-26 01:10) [6]


> DFT   (26.09.08 00:14) [5]
>
> Да, действительно ошибка в описании именно этой фукции.
>

В BDS2006 этой ошибки уже нет. Но есть неясность.
RandomRange returns a random integer from the range that extends between AFrom and ATo (non-inclusive). Не понятно к чему относится "(non-inclusive)". Только к ATo или к обеим границам диапазона.
Да справка одно из самых больных мест Дельфи. (Конечно не только Дельфи. Скорее трудно найти программу, где справка не является больным местом). Но уж очень это печалит.



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
15-1220966449
{RASkov}
2008-09-09 17:20
2008.11.02
Excel


2-1222028467
programmer90
2008-09-22 00:21
2008.11.02
Проблема с маской


2-1222246161
DevExpress
2008-09-24 12:49
2008.11.02
При задании фильтра вылетает ошибка:


15-1221023962
Slider007
2008-09-10 09:19
2008.11.02
С днем рождения ! 10 сентября 2008 среда


15-1221129150
Elchin
2008-09-11 14:32
2008.11.02
Unicode