Esta página também está disponível em outros 2 idiomas.

randomSeed()

[Random Numbers]

Descrição

randomSeed() inicializa o gerador de números pseudoaleatórios, fazendo o começar em um ponto arbitrário em sua sequência aleatória. Essa sequência, enquanto muito longa, e aleatória, é sempre a mesma.

Se é importante que uma sequência de valores gerados por random() seja diferente em execuções subsequentes de um sketch, use randomSeed() para inicializar o gerador de números aleatórios com uma entrada significantemente aleatória, como analogRead() em um pino desconectado.

Por outro lado, pode ser ocasionalmente útil usar sequências pseudoaleatórias exatamente repetidas. Isso pode ser conseguido chamando-se randomSeed() com um número fixo, antes de começar a usar a sequência aleatória.

Parâmetros

seed - número para inicializar a sequência pseudoaleatória (long).

Retorna

Nada

Código de Exemplo

O código abaixo imprime números aleatórios na porta serial.

long randNumber;

void setup() {
  // inicializa a porta serial.
  Serial.begin(9600);

  // inicializa o gerador de números aleatórios.
  // um pino analógico desconectado irá retornar um
  // valor aleatório de tensão em analogRead()
  randomSeed(analogRead(0));
}

void loop() {
  // calcula o próximo número aleatório entre 0 e 299
  randNumber = random(300);

  // imprime o valor na porta serial
  Serial.println(randNumber);
  delay(50);
}

Ver Também