Главная страница
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.48 MB
Время: 0.016 c
2-1222372060
DFT
2008-09-25 23:47
2008.11.02
RandomRange


15-1221193757
Slider007
2008-09-12 08:29
2008.11.02
С днем рождения ! 12 сентября 2008 пятница


2-1222067753
sapsi
2008-09-22 11:15
2008.11.02
Найти порядковый номер строки Memo


1-1201861006
Still Swamp
2008-02-01 13:16
2008.11.02
Обшуршивание компонент на предмет строк


1-1201774076
Still Swamp
2008-01-31 13:07
2008.11.02
Мультиязыковая поддержка