Также возможно генерировать значение из диапазона с плавающей запятой [a, b), исключая b:
r := random;
x := (b-a)*r + a;
Первая строка генерирует значение из [0; 1) интервал; второй дает значение из [a, b).
Если вы хотите получить N случайных значений в интервале [a; b] (например, 5 случайных значений из интервала [1; 2]: {1, 1,25, 1,5, 1,75, 2}) используют следующее:
r := RandomRange(0, N-1);
x := a + r*(b-a)/(N-1);