Rate this post

Trong C++, random (ngẫu nhiên) là một tính năng cho phép tạo ra các giá trị ngẫu nhiên. Sử dụng các giá trị ngẫu nhiên có thể giúp tạo ra các mô hình, giả lập hoặc thuật toán mạng máy tính, tạo ra các trò chơi, v.v.

các bài viết liên quan

C++ cung cấp một số cách khác nhau để tạo ra các giá trị ngẫu nhiên, bao gồm sử dụng thư viện <random>, hàm rand() của thư viện cstdlib, và sử dụng các hàm ngẫu nhiên của thư viện ctime.

Ví dụ, sử dụng hàm rand() của thư viện cstdlib để tạo ra một số ngẫu nhiên trong khoảng từ 1 đến 100:

#include <iostream>
#include <cstdlib>
#include <ctime>

int main() {
    srand(time(0)); // khởi tạo seed cho hàm rand()
    int random_number = rand() % 100 + 1;
    std::cout << "Số ngẫu nhiên: " << random_number << std::endl;
    return 0;
}

Sử dụng thư viện <random> cung cấp một cách bảo mật hơn và chính xác hơn so với hàm rand().

Nó cung cấp các lớp và hàm để tạo ra các số ngẫu nhiên với các phân phối khác nhau, và có thể dễ dàng tùy chỉnh để phù hợp với nhu cầu cụ thể của bạn.

ví dụ của random trong c++

Ví dụ 1: Tạo ra một số ngẫu nhiên trong khoảng từ 1 đến 100 sử dụng thư viện <random>:

#include <iostream>
#include <random>

int main() {
    std::random_device rd; // thiết bị ngẫu nhiên
    std::mt19937 gen(rd()); // bộ sinh số ngẫu nhiên
    std::uniform_int_distribution<> dis(1, 100); // phân phối ngẫu nhiên
    int random_number = dis(gen);
    std::cout << "Số ngẫu nhiên: " << random_number << std::endl;
    return 0;
}

Ví dụ 2: Tạo ra một số ngẫu nhiên thực trong khoảng từ 0 đến 1 sử dụng thư viện <random>:

#include <iostream>
#include <random>

int main() {
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_real_distribution<> dis(0, 1);
    double random_number = dis(gen);
    std::cout << "Số ngẫu nhiên: " << random_number << std::endl;
    return 0;
}

Trong các ví dụ trên, std::random_device là một thiết bị ngẫu nhiên được sử dụng để khởi tạo bộ sinh số ngẫu nhiên. std::mt19937 là một bộ sinh số ngẫu nhiên thường được sử dụng. std::uniform_int_distribution<> hoặc std::uniform_real_distribution<> được sử dụng để xác định khoảng giá trị mà số ngẫu nhiên có thể có. dis(gen) được sử dụng để sinh ra một số ngẫu nhiên trong khoảng đã xác định.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now