Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C/C++의 rand() 및 srand()

<시간/>

이 기사에서는 C++ STL에서 rand() 및 srand() 함수의 작동, 구문 및 예제에 대해 논의합니다.

랜드()란 무엇입니까?

rand() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. rand()는 일련의 난수를 생성하는 데 사용됩니다. 코드에서 난수를 생성하고자 할 때 이 함수를 사용합니다.

C++로 ludo 게임을 만들고 rand()를 사용하여 임의의 숫자를 생성할 수 있도록 1에서 6 사이의 임의의 숫자를 생성해야 하는 것처럼

난수는 이 함수가 호출될 때마다 관련 없는 일련의 숫자를 제공하는 알고리즘을 사용하여 생성됩니다.

1-6 사이의 난수를 생성하고 싶을 때 −

와 같이 이 함수를 사용합니다.

숫자 =랜드() % 6 + 1;

구문

int rand();

매개변수

함수는 매개변수를 허용하지 않습니다. -

반환 값

이 함수는 0에서 RAND_MAX 사이의 정수 값을 반환합니다.

입력

rand() % 100 +1;

출력

57

예시

랜드()

#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;
}

출력

이 코드를 FIRST 시간 출력으로 실행하면 -

Randomly generated numbers are: 1804289383 846930886 1681692777 1714636915
1957747793

이 코드를 N번째 실행하면 출력은 -

Randomly generated numbers are: 1804289383 846930886 1681692777 1714636915
1957747793

srand()란 무엇입니까?

srand() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. srand()는 난수 생성기를 초기화하는 데 사용됩니다. 이 함수는 의사 난수 정수 계열을 생성하기 위한 시작점을 제공합니다. 인수는 의사 난수를 생성하기 위한 시드로 전달됩니다. srand에서 다른 시드 값이 사용될 때마다 의사 번호 생성기는 rand()와 동일한 일련의 다른 결과를 생성할 것으로 예상할 수 있습니다.

구문

int srand(unsigned int seed);

매개변수

이 함수는 다음 매개변수를 허용합니다. -

  • 씨앗 − 의사 난수 생성기에서 시드로 사용하는 정수입니다.

반환 값

이 함수는 의사 생성 난수를 반환합니다.

입력

srand(time(0));
rand();

출력

1804289383

예시

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;
}

출력

이 코드를 FIRST 시간 출력으로 실행하면 -

Randomly generated numbers are: 382366186 1045528146 1291469435 515349891
931606430

이 코드를 두 번째 시간에 실행하면 출력은 -

Randomly generated numbers are: 1410939666 214525217 875042802
1560673843 782892338