Ale moment? Do generowania liczb używasz std::rand czy <random>?
#EDIT Jakby ktoś kiedyś potrzebował to wymyśliłem rozwiązanie do losowania liczby x, takiej że:
Implementacja:
double random() {
constexpr double EPSILON = std::numeric_limits<double>::epsilon();
const double RANDOM = std::rand();
const double STAGE_1 = ((2.0 * RANDOM) / RAND_MAX) - 1.0;
const double STAGE_2 = STAGE_1 - std::copysign(EPSILON, STAGE_1);
return STAGE_2;
}
I jeszcze test: http://pastebin.com/r6d7Zpub
W razie wątpliwości proszę pytać.