Если вы не против написать небольшой скрипт для того, что вам нужно, я бы порекомендовал сделать это в R , системе статистики с открытым исходным кодом.
Например, рассмотрим эту строку, чтобы получить список из 100 распределенных по Гауссу чисел:
$ Rscript -e 'write(rnorm(100) * 100 + 100, "", 1)'
234.2903
-25.53289
168.0262
-28.49810
105.0687
85.97355
269.5072
...
Давайте разберемся с этим.
Стандартная Rкоманда вводит вас в интерактивную среду программирования, что хорошо, если вы пытаетесь понять, как сделать что-то вручную или строите что-то пошагово, но из вашего вопроса звучит так, будто вам нужен только список чисел. отправить в другую программу. Поэтому вместо этого мы используем Rscript, который ведет себя больше как традиционный интерпретатор сценариев Unix: вы можете передать ему имя файла, содержащего сценарий R, или использовать стандартный -eфлаг для передачи всего текста программы в командной строке.
rnorm()является функцией R для получения списка случайных чисел с «нормальным» или гауссовым распределением. Требуется до трех параметров, только первый из которых требуется, сколько цифр вы хотите. Мы запросили 100. Взяв значения по умолчанию для двух других необязательных параметров, мы получим среднее значение 0 и стандартное отклонение 1.
Арифметика после этого просто демонстрирует классную особенность языка R: вы можете выполнять арифметику для целых таблиц данных, матриц и т. Д. Так же легко, как скалярное значение в более типичном языке. Я умножил все сгенерированные значения на 100 и добавил к ним 100 только потому, что могу. Поскольку R - полноценный язык программирования, нет предела тому, что вы можете сделать с этим списком чисел. Это преимущество использования такой системы вместо команды фиксированного назначения, подобной jot.
Мы передаем результат этой предыдущей операции write()функции, которая по умолчанию записывает данные в файл, но мы переопределяем это, передавая пустую строку для второго параметра, имени файла, поэтому она записывает таблицу в терминал вместо. Следующий параметр, 1просто говорит, что мы хотим, чтобы наш вывод был в формате с одним столбцом.
R имеет много других функций генерации случайных чисел, встроенных в базовую систему. Например, мы можем имитировать jotкоманду в ответе lcpriani с помощью этого скрипта:
$ Rscript -e 'write(round(runif(10, 12, 27)), "", 1)'
Здесь мы используем, runif()чтобы получить 10 равномерно распределенных случайных чисел от 12 до 27. Подобно тому rnorm(), как мы использовали выше, эта функция возвращает значения с плавающей запятой, поэтому мы должны получить round()их до ближайших целочисленных значений перед записью их на экран.
R также имеет богатый набор дополнений в CRAN , репозитории пакетов, смоделированном в CPAN Perl. Тот, который вас может заинтересовать, называется просто случайным , который действует как интерфейс к random.org , сервису, который возвращает истинные случайные числа, генерируемые атмосферным шумом.
R - это полноценная среда программирования, поэтому может не потребоваться выводить ваши числа из R в текстовом формате. Возможно, вам удастся полностью решить вашу проблему в R. Дайте ей шанс.