How to generate random floating point numbers in C++

1 Answer

0 votes
#include <iostream>
#include <random>
#include <vector>

// Function to generate N random numbers in the range [lower, upper]
std::vector<double> generateRandomNumbers(int N, double lower, double upper) {
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_real_distribution<> urdis(lower, upper);

    std::vector<double> RandomNumbers;
    for (int i = 0; i < N; ++i) {
        RandomNumbers.push_back(urdis(gen));
    }
    
    return RandomNumbers;
}

int main() {
    int N = 10;
    double lower = 0.0, upper = 3.0;

    std::vector<double> RandomNumbers = generateRandomNumbers(N, lower, upper);

    for (double num : RandomNumbers) {
        std::cout << num << " ";
    }
}

   
/*
run:
   
0.172509 0.616136 1.90481 1.69759 0.884637 1.62294 0.962267 2.42428 1.05139 0.321321 
   
*/

 



answered Nov 2, 2025 by avibootz
edited Nov 2, 2025 by avibootz
...