무작위의#

소개#

C++ 표준 라이브러리는 의사 난수를 생성하는 함수를 제공합니다. 이러한 함수는 VEXcode V5에서 변동성이나 우연성이 필요한 동작에 사용할 수 있습니다.

함수#

<cstdlib> 라이브러리에는 다음과 같은 함수가 포함되어 있습니다.

  • rand — 임의의 정수를 반환합니다.

  • srand — 난수 시드를 설정합니다.

rand#

0에서 2,147,483,647 사이의 임의의 정수를 반환합니다.

Available Functions
int rand();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

0에서 32767 사이의 임의의 정수를 반환합니다.

Notes
  • 특정 범위 내의 임의의 정수를 반환하려면 rand() % max 패턴을 사용하십시오.

  • 특정 범위 내의 임의의 정수를 반환하려면 rand() % (max - min + 1) + min 패턴을 사용합니다.

Examples
// Display a random number
Brain.Screen.print("%d", rand());

// Display a random number between 0 and 100
Brain.Screen.print("%d", rand() % 101);

// Display a random number between 5 and 10
Brain.Screen.print("%d", rand() % (10 - 5 + 1) + 5);

srand#

rand 함수에서 의사 난수 생성기가 사용할 시드를 설정합니다.

Available Functions
void srand( unsigned int seed );

Parameters

매개변수

유형

설명

seed

unsigned int

초기 종자 값.

Return Values

이 함수는 값을 반환하지 않습니다.

Notes
  • srand 프로젝트 시작 직후, rand호출하기 전에 한 번만 호출하세요. rand 호출하기 전에 매번 호출할 필요는 없습니다.

  • srand 호출되지 않으면 프로그램은 srand(1) 사용된 것처럼 동작합니다. 즉 rand 프로젝트가 실행될 때마다 동일한 숫자 시퀀스를 생성합니다.

  • 프로젝트 실행 시마다 다른 결과를 얻으려면 실행 간에 변경되는 값(예: Brain’s timer)으로 시드합니다.

  • 매번 동일한 결과를 얻으려면(테스트에 유용함) srand(1).

Examples
// Use the same seed for random number
srand(5);
Brain.Screen.print("%d", rand() % 100);