Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và các ví dụ của hàm rand () và srand () trong C ++ STL.
rand () là gì?
Hàm rand () là một hàm có sẵn trong C ++ STL, được định nghĩa trong tệp tiêu đề
Giống như chúng ta đang chơi trò chơi ludo trong C ++ và chúng ta phải tạo bất kỳ số ngẫu nhiên nào từ 1 đến 6 để chúng ta có thể sử dụng hàm rand () để tạo một số ngẫu nhiên.
Số ngẫu nhiên được tạo ra bằng cách sử dụng một thuật toán cung cấp một chuỗi các số không liên quan bất cứ khi nào hàm này được gọi.
Giống như chúng ta muốn tạo một số ngẫu nhiên từ 1-6 thì chúng ta sử dụng hàm này như -
Num =rand ()% 6 + 1;
Cú pháp
int rand();
Tham số
Hàm không chấp nhận (các) tham số -
Giá trị trả về
Hàm này trả về một giá trị số nguyên từ 0 đến RAND_MAX.
Đầu vào
rand() % 100 +1;
Đầu ra
57
Ví dụ
rand ()
#include <stdio.h> #include <stdlib.h&g; int main(void){ printf("Randomly generated numbers are: "); for(int i = 0; i<5; i++) printf(" %d ", rand()); return 0; }
Đầu ra
Nếu chúng tôi chạy mã này cho lần ĐẦU TIÊN, đầu ra sẽ là -
Randomly generated numbers are: 1804289383 846930886 1681692777 1714636915 1957747793
Nếu chúng tôi chạy mã này cho lần thứ N đầu ra sẽ là -
Randomly generated numbers are: 1804289383 846930886 1681692777 1714636915 1957747793
srand () là gì?
Hàm srand () là một hàm có sẵn trong C ++ STL, được định nghĩa trong tệp tiêu đề
Cú pháp
int srand(unsigned int seed);
Tham số
Hàm chấp nhận (các) tham số sau -
-
hạt giống - Đây là một số nguyên được sử dụng làm hạt giống bởi trình tạo số giả ngẫu nhiên.
Giá trị trả về
Hàm này trả về một số ngẫu nhiên được tạo giả.
Đầu vào
srand(time(0)); rand();
Đầu ra
1804289383
Ví dụ
srand ()
#include <stdio.h> #include <stdlib.h> #include<time.h> int main(void){ srand(time(0)); printf("Randomly generated numbers are: "); for(int i = 0; i<5; i++) printf(" %d ", rand()); return 0; }
Đầu ra
Nếu chúng tôi chạy mã này cho lần ĐẦU TIÊN, đầu ra sẽ là -
Randomly generated numbers are: 382366186 1045528146 1291469435 515349891 931606430
Nếu chúng tôi chạy mã này cho thời gian THỨ HAI đầu ra sẽ là -
Randomly generated numbers are: 1410939666 214525217 875042802 1560673843 782892338