randomSeed()

Description

randomSeed() initializes the pseudo-random number generator, causing it to start at an arbitrary point in its random sequence. This sequence, while very long, and random, is always the same.

If it is important for a sequence of values generated by random() to differ, on subsequent executions of a sketch, use randomSeed() to initialize the random number generator with a fairly random input, such as analogRead() on an unconnected pin.

Conversely, it can occasionally be useful to use pseudo-random sequences that repeat exactly. This can be accomplished by calling randomSeed() with a fixed number, before starting the random sequence.

Syntax

randomSeed(seed)

Parameter Values

  • seed: number to initialize the pseudo-random sequence. Allowed data types: unsigned long.

Return Values

  • Nothing

Example Code

The code generates a pseudo-random number and sends the generated number to the serial port.

long randNumber; void setup() { Serial.begin(9600); randomSeed(analogRead(0)); } void loop() { randNumber = random(300); Serial.print("A random number: "); Serial.println(randNumber); delay(1000); }
  • The result on Serial Monitor:
COM6
Send
A random number: 17 A random number: 87 A random number: 288 A random number: 239 A random number: 67 A random number: 114 A random number: 124 A random number: 294
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

See Also

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Disclosure: Some links in this section are Amazon affiliate links. If you make a purchase through these links, we may earn a commission at no extra cost to you.
Additionally, some links direct to products from our own brand, DIYables.

※ OUR MESSAGES