Библиотека собственных матриц, заполняющая матрицу случайными значениями с плавающей запятой в заданном диапазонеC++

Программы на C++. Форум разработчиков
Anonymous
Библиотека собственных матриц, заполняющая матрицу случайными значениями с плавающей запятой в заданном диапазоне

Сообщение Anonymous »

Функция setRandom в библиотеке матриц Eigen заполняет заданную матрицу случайными числами в диапазоне [-1,1]. Как я могу расширить это для генерации чисел в любом заданном диапазоне? Мне нужны числа с плавающей запятой, и меня устраивает псевдослучайность.

Я пробовал сделать следующее:

Код: Выделить всё

B = LO + A.cast().array()/(static_cast (RAND_MAX)/(HI-LO));
Здесь A — рассматриваемая матрица, а [LO,HI] — диапазон, который я хочу ее заполнить. Проблема в том, что значение RAND_MAX для меня равно 2147483647, и это портит весь расчет.

Любая помощь очень ценится.>

Подробнее здесь: https://stackoverflow.com/questions/358 ... iven-range

Вернуться в «C++»