В Паскаль вызов Random без аргументов возвращает случайное вещественное число на [0;1]. Необходимые диапазона получаются нормированием (если так понятнее - "масштабированием") числа на нужный диапазон. Сначала умножаем на разницу между верхней и нижней границей диапазона, а потом к результату прибавляем нижнюю границу. Так, для [22;23] это будет 1*Random+22 или просто Random+22. Для [0;10] будет 10*Random, для [-50;50] получаем 100*Random-50