fork download
  1. #include <iostream>
  2. #include <random>
  3.  
  4. struct RandNormGen {
  5. std::random_device rd;
  6. std::mt19937 gen;
  7. std::normal_distribution<float> normalDist;
  8.  
  9. RandNormGen() {
  10. gen = std::mt19937(rd());
  11. normalDist = std::normal_distribution<float>(0, 1);
  12. }
  13.  
  14. float randFloat(float sigma, float mean = 0) {
  15. float r = normalDist(gen) * sigma + mean;
  16. return r;
  17. }
  18. };
  19.  
  20. int main()
  21. {
  22. RandNormGen r;
  23. std::cout << r.randFloat(1.0f) << "\n";
  24. return 0;
  25. }
Success #stdin #stdout 0.01s 5424KB
stdin
Standard input is empty
stdout
-1.03151