fork download
  1. #include <random>
  2. #include <algorithm>
  3. #include <functional>
  4. #include <iostream>
  5.  
  6. int main()
  7. {
  8. // kiểu phần tử của mảng, nếu thích kiểu khác thì thay vào
  9. typedef int T;
  10.  
  11. // khởi tạo random_device là đối tượng nguồn sinh ra các yếu tố ngẫu nhiên
  12. std::random_device rd;
  13. // random engine, dùng để sinh số ngẫu nhiên dựa vào các nguồn (seed) từ random_device
  14. std::default_random_engine e1(rd());
  15. // Các số ngẫu nhiên được sinh ra sẽ bị biến đổi để có phân phối đều trong đoạn [-10, 10]
  16. // Nếu thích phân phối khác (như poission, bernoulli ...) thì thay vào
  17. std::uniform_int_distribution<T> uniform_dist(-10, 10);
  18.  
  19. T v[10]; // Mảng 10 phần tử
  20. std::generate_n(v, 10, std::bind(uniform_dist, std::ref(e1))); // Sinh 10 số ngẫu nhiên
  21.  
  22. for (auto n : v) std::cout << n << ' ';
  23. }
Success #stdin #stdout 0s 3272KB
stdin
Standard input is empty
stdout
-2 -3 -5 8 -3 4 -2 6 4 -2