Arduino

технологии

Генераторы случайных значений

Функция randomSeed(seed)

Описание

Инициализирует генератор псевдослучайных чисел, заставляя его запускаться в произвольной точке. Последовательность хотя и очень длинная, всегда одинакова. Точка, с которой начнет выдаваться последовательность, зависит от параметра.

Если важно, чтобы последовательность значений отличалась при последующих выполнениях программы, можно в качестве параметра передавать например значение, полученное вызовом функции analogRead() для не подключенного пина.

Синтаксис

randomSeed(seed)

Параметры

seed - номер для инициализации псевдослучайной последовательности

Возвращаемое значение

нет

Функция random()

Описание

Функция генерирует псевдослучайные числа.

Синтаксис

random(max)

random(min, max)

Параметры

min - нижняя граница случайного значения, включая само числа (необязательный параметр)

max - верхняя граница случайного значения, не включая само число

Возвращаемое значение

Случайное число от min до max

Пример
long randNum;

void setup() 
{
  Serial.begin(9600);
  randomSeed(analogRead(0)); // пин 0 ни к чему не подключен

  randNum = random(1, 100);
  Serial.println(randNum); // печатает случайное число от 1 до 99
}

void loop() 
{
}
Примечания

В некоторых случаях требуется, чтобы псевдослучайная последовательность повторялась при повторном запуске программы. Для этого нужно использовать randomSeed() с фиксированным параметром.