Random
Random (Случайный) - генерирует случайное число в заданном диапазоне.
Свойства
Входной аргумент | Тип аргумента | Тип переменной | Описание |
---|---|---|---|
Offset | Constant, Variable, Expression | Double | Минимальное число генерируемого диапазона |
Gain | Constant, Variable, Expression | Double | Прирост |
Выходной аргумент | Тип аргумента | Тип переменной | Описание |
---|---|---|---|
RandomValue | Variable | Double | Переменная, в которую сохраняется сгенерируемое число |
Обратите внимание, Gain — это не максимально возможное генерируемое число. Это прирост к значению Offset. Максимальное генерируемое число = Offset + Gain.
Таким образом, если вам необходимо сгенерировать случайные числа от -100
до 100
, то в поле Offset следует установить значение -100, а в поле Gain - 200.
Пример
Один из случаев использования блока Random описан в примере для блока IF.
Здесь рассмотрим применение блока Random для заполнения массива случайными числами от 0 до 100.
Сначала создадим переменные: mass и v1 c типом Double, i и index с типом Int32.
Для переменной mass выберем свойство "Массив" с размером "10".
Для переменной i и index установим начальное значение равным 0.
Переходим к настройке блоков программы.
Откроем свойства блока Random. Будем генерировать число от 0 до 100 и записывать полученное значение в переменную v1.
Далее, надо записать данное значение в массив. Для этого настраиваем блок SetArrayValue.
В поле Array выбираем наш массив - переменную mass. Далее, необходимо пройти по всем элементам массива от 0-го до 9-го. Для этого в поле Index установим Variable=i. И в выбранный Index записываем полученное случайное значение, из переменной v1.
Для заполнения последующих элементов массива, программу нужно зациклить. Для этого добавим блок Присваивания. Переменной i присвоим значение: i+1
, переменной index = index+1
Для более удобного отслеживания результата, добавим задержку в 1 секунду с помощью блока Delay.
Запустим проект и отследим исполнение на панели «Контекст».
После этого, индекс станет больше, чем размер массива. В логе появится сообщение об ошибке, и программа завершит работу.
Если необходимо продолжить выполнение программы, после выполнения массива, то необходимо вытянуть связь из блока SetArrayValue через выход ER. Например, можем добавить туда блок сообщения, который будет сообщать пользователю об окончании выполнения программы.
В блоке Сообщения, соответственно, напишем желаемое выражение.
Запустим проект ещё раз.
На рисунке выше видим, что после выполнения программы, отобразилось окно с сообщением.