812 Глава 14

(rand() % 201) - 100

возвращает числа в диапазоне от -100 до 100.

Функцию rand можно использовать и для генерации действительных случай-
ных чисел. Например, выражение

10. * rand() / RAND_MAX

генерирует псевдослучайные действительные числа, распределенные в диапазоне
от 0 до 10.

Функция _lrand работает аналогично функции rand, но имеет отрезок аперио-
дичности 264 и диапазон от 0 до 231 - 1.

Функция random отличается от предыдущих тем, что имеет параметр num.
определяющий верхнюю границу диапазона генерируемых чисел. Поэтому, если
надо, например, генерировать числа в диапазоне от 0 до 100, это можно сделать
выражением

random(101) ;

не прибегая, как для предыдущих функций, к операции %.

Функция KandG генерирует квазислучайные действительные числа, распре-
деленные но нормальному закону (закону Гаусса) с математическим ожиданием
Mean и средним квадратичным отклонением StdDev.

Поскольку генерируемые рассматриваемыми функциями числа являются
псевдослучайными, то при каждом новом запуске вашего приложения будет выра-
батываться одна и та же последовательность чисел. Если это недопустимо, надо
рандомизировать генератор чисел, т.е. задавать ему каждый раз новое случайное
исходное число. Рандомизацию всех генераторов, кроме RandG, осуществляет
функция randomize. Достаточно вставить где-то в текст программы (например, в
событие OnCreate формы) оператор

randomize() ;

чтобы при каждом запуске приложения генерировалась новая последовательность
чисел.

Функция srand отличается от randomize тем, что задает в качестве начального
не случайное число, а значение своего параметра seed.

Рандомизацию генератора RandG осуществляет функция Randomize, анало-
гичная randomize. Задание конкретного начального числа для этого генератора
можно осуществить, задавая значение целой переменной RandSeed, определенной
в файле System.hpp.

14.6.5 Функции обработки статистических данных

Приведенные ниже функции обрабатывают данные, хранящиеся в массиве
Data, в котором максимальное значение индекса равно Data_Size.

функция	-———•———————————- ——— ———————-г-———— синтаксис / описание файл
Variance	Extended Variance(const double * Data, const int DataSize)Несмещенная оценка дисперсии (см. Рорп Variance)	Math.hpp
MaxIntValue	int MaxIntValue( const int * Data, const int DataSize)Максимальное значение	Math.hpp
MaxValue	double MaxValue(const double * Data, const int DataSize)Максимальное значение	Math.hpp