Ricerca…


Sintassi

  • random (max) // Restituisce un numero (lungo) pseudo-casuale compreso tra 0 (incluso) e max (esclusivo)

  • random (min, max) // Restituisce un numero (lungo) pseudo-casuale compreso tra min (compreso) e max (esclusivo)

  • randomSeed (seed) // Inizializza il generatore di numeri pseudo-casuali, facendolo iniziare in un punto specificato nella sua sequenza.

Parametri

Parametro Dettagli
min Il valore minimo possibile (incluso) generato dalla funzione random() .
max Il valore massimo possibile (esclusivo) generato dalla funzione random() .
seme Il seme che verrà usato per mescolare la funzione random() .

Osservazioni

Se randomSeed() viene chiamato con un valore fisso (ad esempio randomSeed(5) ), la sequenza di numeri casuali generata dallo schizzo si ripeterà ogni volta che viene eseguita. Nella maggior parte dei casi, viene preferito un seme casuale, che può essere ottenuto leggendo un pin analogico non connesso.

Genera un numero casuale

La funzione random() può essere utilizzata per generare numeri pseudo-casuali:

void setup() {
    Serial.begin(9600);
}

void loop() {
    long randomNumber = random(500);  // Generate a random number between 0 and 499
    Serial.println(randomNumber);

    randomNumber = random(100, 1000); // Generate a random number between 100 and 999
    Serial.println(randomNumber);

    delay(100);
}

Impostare un seme

Se è importante che una sequenza di numeri generata da random() differisca, è una buona idea specificare un seme con randomSeed() :

void setup() {
    Serial.begin(9600);
    
    // If analog pin 0 is left unconnected, analogRead(0) will produce a
    // different random number each time the sketch is run.
    randomSeed(analogRead(0));
}

void loop() {
    long randomNumber = random(500); // Generate a random number between 0 and 499
    Serial.println(randomNumber);

    delay(100);
}


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow