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

rand () và srand () trong C / C ++

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 đề . rand () được sử dụng để tạo ra một chuỗi các số ngẫu nhiên. Chúng tôi sử dụng chức năng này khi chúng tôi muốn tạo một số ngẫu nhiên trong mã của mình.

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 đề . srand () được sử dụng để khởi tạo bộ tạo số ngẫu nhiên. Hàm này cung cấp một điểm bắt đầu để tạo ra chuỗi số nguyên giả ngẫu nhiên. Đối số được chuyển dưới dạng hạt giống để tạo một số giả ngẫu nhiên. Bất cứ khi nào một giá trị gốc khác được sử dụng trong srand, trình tạo số giả có thể tạo ra các chuỗi kết quả khác nhau giống như rand ().

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