- MathAbs
- MathArccos
- MathArcsin
- MathArctan
- MathArctan2
- MathClassify
- MathCeil
- MathCos
- MathExp
- MathFloor
- MathLog
- MathLog10
- MathMax
- MathMin
- MathMod
- MathPow
- MathRand
- MathRound
- MathSin
- MathSqrt
- MathSrand
- MathTan
- MathIsValidNumber
- MathExpm1
- MathLog1p
- MathArccosh
- MathArcsinh
- MathArctanh
- MathCosh
- MathSinh
- MathTanh
- MathSwap
MathSrand
Устанавливает начальное состояние для генерации ряда псевдослучайных целых чисел.
void MathSrand(
|
Параметры
seed
[in] Начальное число для ряда случайных чисел.
Возвращаемое значение
Нет возвращаемого значения.
Примечание
Функция MathRand() предназначена для генерации последовательности псевдослучайных чисел. Вызов MathSrand() с определенным инициализирующим числом позволяет получать всегда одну и ту же последовательность псевдослучайных чисел.
Для гарантированного получения неповторяющейся последовательности используйте вызов MathSrand(GetTickCount()), так как значение GetTickCount() увеличивается с момента запуска операционной системы и не повторяется в течение 49 дней, пока не переполнится встроенный счетчик миллисекунд. Использование MathSrand(TimeCurrent()) не подходит по той причине, что функция TimeCurrent() возвращает время прихода последнего тика, которое может не меняться долгое время, например, в выходные дни.
Инициализацию генератора псевдослучайных чисел с помощью MathSrand() для индикаторов и экспертов лучше всего делать в обработчике OnInit(), это избавит от последующих многократных перезапусков генератора в OnTick() и OnCalculate().
Вместо функции MathSrand() можно использовать функцию srand().
Пример:
#property description "Индикатор демонстрирует центральную предельную теорему, которая гласит:"
|