random()

설명

이 난수 함수는 유사 난수를 생성합니다. 유사 난수는 알고리즘의 상태에 의해 값이 정해지므로 생성된 수열은 일정한 주기를 가집니다. 그래서 난수가 예측 가능성하고 다음에 반복할 수 있습니다.

[출처] (아두이노) 난수 random() 함수|작성자 백수 롸이언

문법

random(max)

random(min, max)

매개변수

  • min: 임의 값의 하한 (포함) (선택 사항).
  • max: 임의 값의 상한, 제외.

반환값

  • min 과 max-1 사이의 임의의 숫자를 반환합니다. 데이터 유형 : long.

예제 코드

이 코드는 임의 수를 만들어서 그것을 표시한다.

long randNumber; void setup() { Serial.begin(9600); // if analog input pin 0 is unconnected, random analog // noise will cause the call to randomSeed() to generate // different seed numbers each time the sketch runs. // randomSeed() will then shuffle the random function. randomSeed(analogRead(0)); } void loop() { // 0 에서 299 사이 임의 값 출력 randNumber = random(300); Serial.println(randNumber); // 10 에서 19 사이 임의 값 출력 randNumber = random(10, 20); Serial.println(randNumber); delay(50); }

※ 주의 및 경고:

random ()에 의해 생성된 일련의 값이 서로 다른 것이 중요할 경우, randomSeed () 함수의 매개 값으로 선이 연결되지 않은 핀의 analogRead() 값을 넘기면 상당히 그럴싸한 임의의 값을 설정할 수 있습니다.

반대로 정확하게 반복되는 의사 난수 시퀀스를 사용하는 것이 때때로 유용 할 수 있습니다. 이는 임의 시퀀스를 시작하기 전에 고정 된 숫자로 randomSeed()를 호출하여 수행 할 수 있습니다.

max 매개 변수는 값이 저장되는 변수의 데이터 유형에 따라 선택해야합니다. 어쨌든 절대 최대 값은 생성 된 값의 긴 특성 (32 비트-2,147,483,647)에 바인딩됩니다. max를 더 높은 값으로 설정하면 컴파일 중에 오류가 발생하지 않지만 스케치 실행 중에 생성 된 숫자가 예상과 다릅니다.

더보기

Please note: These are affiliate links. If you buy the components through these links, We may get a commission at no extra cost to you. We appreciate it.