Computer >> Máy Tính >  >> Lập trình >> C ++

Làm thế nào để tạo các số ngẫu nhiên khác nhau trong một vòng lặp trong C ++?

Hãy để chúng tôi xem cách tạo các số ngẫu nhiên khác nhau bằng C ++. Ở đây chúng tôi đang tạo các số ngẫu nhiên trong phạm vi 0 đến một giá trị nào đó. (Trong chương trình này, giá trị tối đa là 100).

Để thực hiện thao tác này, chúng ta sử dụng hàm srand (). Đây là trong thư viện C ++. Hàm void srand (unsigned int seed) tạo hạt giống trình tạo số ngẫu nhiên được sử dụng bởi hàm rand .

Khai báo srand () như sau -

void srand(unsigned int seed)

Nó nhận một tham số được gọi là hạt giống. Đây là một giá trị số nguyên được sử dụng làm hạt giống bởi thuật toán tạo số giả ngẫu nhiên. Hàm này không trả về gì.

Để lấy số, chúng ta cần phương thức rand (). Để nhận số trong phạm vi từ 0 đến tối đa, chúng tôi đang sử dụng toán tử mô-đun để lấy phần còn lại.

Đối với giá trị gốc, chúng tôi đang cung cấp kết quả của hàm time (0) vào hàm srand ().

Ví dụ

#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
main() {
   int max;
   max = 100; //set the upper bound to generate the random number
   srand(time(0));
   for(int i = 0; i<10; i++) { //generate 10 random numbers
      cout << "The random number is: "<<rand()%max << endl;
   }
}

Đầu ra

The random number is: 6
The random number is: 82
The random number is: 51
The random number is: 46
The random number is: 97
The random number is: 60
The random number is: 20
The random number is: 2
The random number is: 55
The random number is: 91