Стало интересно: приходилось ли кому-либо использовать генератор случайных чисел ГСЧ в реальных практических задачах и что это были за задачи?
---
1. выбор "дежурного" с обработкой исключения ранее выбранного в последующих "рулетках";
2. случайный "анекдот дня";
3. генерация текста (в разных формах, для создания впечатления "человеческого участия) для эл. писем клиентам об упоминании услуг своей компании (звучит строго, но подразумеваю: обновление, настройка, доработка, а также (внимание) обычное "мы о вас помним и готовы помочь).
4. в срм: случайный выбор клиентов
5. случайный товар (для продажников) и отправка эл. письма
---
ildarovich, Делал решение по методу Монте-Карло для расчета риска аренды основных средств...
---
Налоговая попросила копии оригиналов счетов-фактур за год. Объем документов впечатляет. Копировать не реально. Распечатать не проблема, проблема подписать все это хозяйство. Сделал порядка 30 вариантов png изображений Печать+Подпись и выводил их на печать с помощью ГСЧ.
---
ildarovich, с одним, "не полностью рассчитавшимся" по выданным значениям ГСЧ выдавал номер документа, который удалялся. Плохо, конечно....
---
ildarovich, Вывод времени до окончания работы отчета/обработки :)
---
ildarovich, да. При создании печ.формы контрольной накладной потребовалось выбирать ГСЧ строку из документа.
Смысл в том, что склад отгружает продукцию. Нужно наугад выбрать продукцию и проконтролировать работу склада.
Запросом получала всю номенклатуру из ТЧ, далее с помощью ГСЧ любую строку. Пример из кода:

ВыборкаИтоги = Запрос.Выполнить().Выгрузить();
ГСЧ = новый ГенераторСлучайныхЧисел();
СлучайноеЧисло = ГСЧ.СлучайноеЧисло(0, ВыборкаИтоги.Количество()-1);

НаимТМЦ = ВыборкаИтоги[СлучайноеЧисло].Продукция.Наименование;
---
ildarovich, при прикручивании работы с файлами в томах на дисках ГСЧ использовался для формирования относительно уникального имени файла в томе, на основе исходного имени файла.
---
На самом деле редко когда требуется именно числовые значения - приходилось использовать только для заполнения набора тестовых данных.
гораздо чаще Новый УникальныйИдентификатор() - все таки база данных это в основном работа по ссылочным/текстовым типам.
---
caponid, приходилось использовать только для заполнения набора тестовых данных. При заполнении базы миллионами документов - генерировал случайное вариативное содержание документов (тестирование плавающей нагрузкой).
---
AlexO, да вот именно это и делал - потом отслеживал блокировки, узкие места и правил код - потому как на рабочей базе статистику собирать было нельзя - она и так загибалась.
удалось в результате очень серьезно разгрузить сервер бд и найти плавающие ошибки.
---
Чаще всего - генерация штрих-кодов. Также генерация различных коротких УИ для файлов нестандартного обмена.
---
У нас с помощью генератора ежедневно определяется выборка людей, кого проверят алкотестером. генератору быть!
---
давайте вознаграждение
---
spezc, мне вознаграждения не жалко, но хотелось бы узнать про как можно больше разнообразных задач.
---
ildarovich, так между всеми участниками все равно приз не разделить. так что предлагаю отдать вознаграждение тому, кто первый привез реальный пример использования ГСЧ (общий пример про ШК не в счет).
---
spezc, давайте, я отмечу ваше участие - скачаю 3 ваших разработки. А призовой фонд пока оставлю для самых интересных применений. - Согласны?
---
ildarovich, спасибо за предложение, но не обязательно. это наверно было ближе к юмору)
так что пусть призовой фонд остается и пусть народ делиться своим опытом)
---
Применяется регулярно для установки случайных задержек в парсере яндекс-маркета и подобных ему сайтов
---
я дополнительный код генерировал им для подтверждения уникальности клиента, при приеме оборудования в ремонт.
Этот код клиент потом на сайте вводил для запроса инфы по своему аппарату.
Примитивная такая, но защита от дурака на шару.
---
билеты на экзамене :)
---
(11) Chameleon1980, (12) HitGroove, (13) TimonPODmuzon, это все безделушки, а интересуют реальные задачи
---
рулетка
---
Форма № 57-Т статистической отчетности!
---
HitGroove,
По моему ЭТО ЛУЧШИЙ ОТВЕТ! ;-))
---
AnryMc, я решил взять количеством :)
---
timeforlive,
я решил взять количеством :)
Вы поосторожнее здесь с количеством (даже по теме) а то "старички" могут подумать что новичёк $m так зарабатывает и поставят кучу "-" и вы в дауне на месяц и воспользоваться заработанным не получиться ;-)
---
AnryMc, СМ я зарабатываю исключительно предоставлением полезной инфы в постах (примеры кода и т.д.), тут тема похоже на LIFE, почему бы не поучаствовать.

Свои публикации выложу в ближайшем будущем, пока что много работы, чтобы завершить идейные начала.
---
Делал девчонкам на работе обработку-шутку "Убегающая кнопка", где кнопка (при наведении на неё) меняет координаты, заданные ГСЧ.
---
я делал обработку, которая "шифровала" текст. Ключом было как раз число случайное из ГСЧ.
---
Была задача по имеющимся начальным остаткам и документам поступления и текущим остаткам на складе создать отчеты по розничным продажам на каждый день за год для предстоящей проверки.
---
При программном создании пользователя требовалось сгенерировать пароль. Вот Вам и ГСЧ в помощь
---
Распределение накладных по дням, прогон(размазыввание) оборота за год, распределение водил в накладные в зависимости от веса..
Да много чего, что без рандома не сделал бы.
---
+22 +всякие "рисованные" отчеты дистрибуторам размазать по точкам, для увеличения абс, к примеру или, чтоб sku "правильно" размазывалось
---
1. выбор "дежурного" с обработкой исключения ранее выбранного в последующих "рулетках";
2. случайный "анекдот дня";
3. генерация текста (в разных формах, для создания впечатления "человеческого участия) для эл. писем клиентам об упоминании услуг своей компании (звучит строго, но подразумеваю: обновление, настройка, доработка, а также (внимание) обычное "мы о вас помним и готовы помочь).
4. в срм: случайный выбор клиентов
5. случайный товар (для продажников) и отправка эл. письма
---
timeforlive, (1) ildarovich,
Пример http://infostart.ru/public/66181/
Режим "Случайный порядок"
---
AnryMc, прикольно. Ни что не ново под луной (с) Шекспир.
любые идеи уже существуют.
---
)))
как вариант, рандомное начисление зарплаты
---
6. несколько случайных товаров (из списка допустимых для случайного выбора) для продажи по категориям АВС для продаванов в рознице, по которым начисляются дополнительные проценты при продаже.(25) Boneman, я описал пример, можно сказать :)
---
6. несколько случайных товаров (из списка допустимых для случайного выбора) для продажи по категориям АВС для продаванов в рознице, по которым начисляются дополнительные проценты при продаже.
---
7. из той же АВС: несколько случайных товаров для продажи (в зависимости от отдела, в котором работает продавец - категория и тип товара).
8. вопросы для тестирования тех же продавцов (другой категории сотрудник). Для офис менеджеров я бы поставил неск. случайных вопросов по безопасности ПО (например, нельзя открывать исполнительные файлы в эл. письмах)
---
Приходилось. Пароль
---
9. продолжу идею с вопросами и тестированием - повышение знаний сотрудников - предоставление случайной задачи (например, в одной фирме есть система поощрения за изучение англ. языка, тогда можно сделать словарик, из которого случайные слова / фразы будут предоставляться, а сотрудник должен дать перевод, используя гугл и вводя перевод на русском в поле ввода).
в сбербанке, например, существует система премий по 5 признакам, одна из них - саморазвитие. Обязательно раз в месяц нужно подготовить тему для выступления (в юридическом отделе обычно по изменениям в законодательстве). в сбере хоть и не используют 1с, но некоторые фирмы таеже заинтересованы в развитии своих сотрудников.
генерация случайностей - только в пользу этому
---
Генерил изи пароли, для "сложных" срезал первых 10 вроде с новый УИД.
Но потом одному ОЧЕНЬ неуверенному бухгалтеру апнул на "Меджик Ball 8".
Н вариантов - "Хорошие перспективы";"Знаки говорят — «да»";"Пока не ясно, попробуй снова";
Причем добавил еще парочку своих 1сных фраз) он стал так отчетность сдавать х)
Внимание - НЕ для економистов с фин. резом!!!

назвал: ОбработкаДляПринятияРешения)
---
Дважды приходилось юзать
Первый раз - случайным образом выбиралась картинка печати. Печать+Подпись. Разные подписи.
Второй раз - розыгрыш на 1 апреля с произвольно-устанавливающимся временем закрытия формы. Чуть не погиб от рук бухов ))
---
еще был раз... устанавливалась случайная наценка на печать. Широкий формат и сольвентная печать. Себестоимость копеечная, но директор хотел, что бы разным клиентам циферки чучуть отличались. Так и не смог объяснить зачем. Но рандомная поправка +/-5% до сих пор работает ))
---
Генератор случайных чисел ГСЧ используется при создании контейнера закрытого ключа для отправки 1С отчетности через оператора
---
На данный момент предложены следующие варианты:

Заполнение набора тестовых данных
Генерация ШК
Генерация коротких уникальных УИ
Выборочный контроль сотрудников
Расчет риска методом Монте-Карло
Определение интервалов обращения к сервисам
Одноразовые пароли
Выбор аттестационных вопросов
Азартные игры
Эмуляция отчетности
Розыгрыши
Ключи шифрования
Формирование недостающих документов
Моделирование деятельности
Генерация паролей
Распределение накладных по водителям
Моделирование отчетности
Выбор исполнителя
Выбор анекдота
Диверсификация текстов
Выбор клиентов для акций
Выбор товаров для акций
Розыгрыш премий
Выбор товаров для стимулирования продаж
Имитация ошибок и искажений информации
Магический шар
Криптография

Это все?
---
ildarovich,
Ну "Методом Монте-Карло" можно не только риски...
В совке (ещё на "Примусе" - диалоговая система для ОС ЕС) я монте-карлил оптимизацию фазированной акустической антенны...

Например им же можно решать задачи методом графов - например оптимизация маршрута...
Да вообще практически любая оптимизация (укладки, расстояний...)
---
ildarovich,
Стандартная БП 3.0 использует ГенераторСлучайныхЧисел для вывода информации (т.е рекламы) при старте
---
Сообщение было скрыто модератором.
---
ГСЧ - очень полезная вещь. Он позволяет получить максимум информации при минимуме действий, развернуть один бит в любой, сколь угодно большой объем. В связи с этим, сфера его применения неопределенно широка.
С таким же успехом вы могли бы спросить про условный оператор.
---
Использовал для задачи моделирования системы управления запасами.
Суть в том, что объем (спроса) расхода со склада нельзя спрогнозировать точно. Всегда будут отклонения. Для адекватного имитационного моделирования нужно использовать ГСЧ с заданной функцией распределения.
---
Автоматическое распределение товара по покупателям в условиях спроса превышающего предложение, с учетом различного приоритета покупателей. Товар штучный, автомобили в данном случае, покупатели - оптовики (дилеры).
---
Еще как-то сваял конфу для спортсменов - прием результатов на финице, расстановка на старте. Так вот расстановка на старте рандомная опционально
---
Банально, но - генерация паролей для той же 1С-ки :)

Особенно в случае, если у базы стоит галка "сложный пароль" и не короче N символов

вот примитивный вариант:

```1c
    Пароль = ";
    ГСЧ = Новый ГенераторСлучайныхЧисел(Число(Формат(ТекущаяДата(), "ДФ=yyyyMMddHHmmss")));
    МинимальнаяДлинаПаролейПользователей = ПолучитьМинимальнуюДлинуПаролейПользователей();
    Если МинимальнаяДлинаПаролейПользователей = 0 Тогда
    МинимальнаяДлинаПаролейПользователей = 7;
    КонецЕсли;
    Сч = 0;
    Пока СтрДлина(Пароль) < МинимальнаяДлинаПаролейПользователей Цикл
    Сч = Сч + 1;
    Если Сч <= 5 Тогда
    Пароль = Пароль + Символ(ГСЧ.СлучайноеЧисло(48, 57)); // цифры
    ИначеЕсли Сч = 6 Тогда
    Пароль = Пароль + Символ(ГСЧ.СлучайноеЧисло(1073, 1103)); // строчная кириллица
    ИначеЕсли Сч = 7 Тогда
    Пароль = Пароль + Символ(ГСЧ.СлучайноеЧисло(1040, 1072)); // прописная кириллица
    КонецЕсли;
    КонецЦикла;
```
---
Я как-то при распределении бонуса по подразделению рандомно выбирал "счастливчика" и закидывал не распределившийся после вычислений остаток. Копейки, конечно, но почему все должно доставаться последнему по списку?:)
---
Программная эмуляция набора текста из случайных букв с случайной задержкой между нажатиями и случайной паузой между набором слов (ну скажем, для тестирования "CrocoTime").
---
Использовал для назначения уникального кода пользователям.
---
Приходилось в обработке заполнять массив случайными числами с помощью этой функции
---
Приходилось как-то генерить фиктивные документы за период на общую сумму, разбивка случайным образом.
---
Нет ни чего более закономерного, чем случайное событие в заданном диапазоне. Использовалась для исключения последовательностей в заданном интервале определенных чисел. Как говорил препод по теории вероятности и комбинаторики область применения сиих предметов достаточно обширна и с этими словами он начал выкидывать в почтовую щель зачетки - мол, чья вылетела, тому 5 за экзамен...Про статистику понравилось - прям в точку ;)
---
В общем, тему закрываю.
Наиболее полезными мне показались использования, связанные со случайными выборками из справочников и документов: для выборочного контроля, вознаграждения, назначения.
Интересен метод Монте-Карло, но, вероятно, схема использования сильно зависит от самой задачи, поэтому без ее подробного описания оценить полезность сложно. Интересна бы была подробная статья на эту тему, если был практический эффект.
Генерация фактуры прошлой деятельности как-то не вдохновляет, разве что для тестирования.
В генерации паролей нет никакой 1С-специфики.
Поэтому вознаграждение, на мой взгляд, заслуживает timeforlive, предложивших больше всех полезных примеров.
---
ildarovich,
Интересен метод Монте-Карло, но, вероятно, схема использования сильно зависит от самой задачи, поэтому без ее подробного описания оценить полезность сложно. Интересна бы была подробная статья на эту тему, если был практический эффект.
Литературы много
Использование метода Монте-Карло для расчета риска http://baguzin.ru/wp/?p=3467
Как я считал время прибытия методом Монте-Карло http://habrahabr.ru/post/192448/

ЗЫ Его подобие есть в Екселе как инструмент "Поиск решения"...
---
AnryMc, тут проблема не в литературе. Ее действительно много. Проблема в том, что в ней рассматриваются ученические, учебные задачи. Да и из головы задачу не проблема придумать. А хотелось бы увидеть ту реальную задачу, за которую заплатил (готов заплатить) заказчик.
---
ildarovich,

;-)
Тогда - "приниматель решений", типа Да-Нет_ОтложитьРешениеДоЗавтра...
---
Генератор псевдослучайных чисел
https://ru.wikipedia.org/wiki/Генератор_псевдослучайных_чисел
Современная информатика широко использует псевдослучайные числа в самых разных приложениях — от метода Монте-Карло и имитационного моделирования до криптографии. При этом от качества используемых ГПСЧ напрямую зависит качество получаемых результатов. Это обстоятельство подчёркивает известный афоризм математика ORNL Роберта Кавью: «генерация случайных чисел слишком важна, чтобы оставлять её на волю случая».
---
По-моему, вознаграждение выдано ни за что.
В 60 сообщениях не названо ни одного серьезного применения, либо - игрушки, либо - игралки разработчика, изнывающего от безделья )
Когда мне нужен был генератор случайных чисел в 1С - его не было.
Рамдомная выборка из большого массива данных для формирования статистики, и последующего анализа на основе полученной презентативной выборки.
---
P.S. Претендую на 4 см ))
---
Главное чтобы зарплата начислялась не через генератор случайных чисел
---
Сообщение было скрыто модератором.
---
ildarovich, для спама "Именно <тема топика> я лично почти не использую, но сама программа мне жизненно необходима..." есть кнопка "спам". Минусовать не обязательно ))
---
Полагаю, что ГСЧ может использоваться при планировании/прогнозировании наряду со статистическими данными или при недостаточности таковых. Просторы для применения тем выше, чем ближе объектная область к сложным техническим устройствам, для которых зависимость числа отказов (поломок т.е.) технари описывают формулами из теории вероятностей, но заранее дать точный прогноз по времени простоя и объемам ремонтных работ не могут.
Нечто подобное можно соотнести и с чрезвычайными ситуациями и планированием мероприятий по их ликвидации и предупреждению.

Не из области учета и 1С но все-таки - моделирование случайных нагрузок (ветер в строительстве, проезжающий по мосту транспорт и т.д.)
---
Infector, Не из области учета и 1С но все-таки - моделирование случайных нагрузокКаким образом вы моделируете случайные нагрузки - на мост? На балку? На дорогу?
Т.е. смоделировали через ГСЧ нагрузку "танк" - рассчитан мост на "танк". А "случайно" смоделировали нагрузку только на велосипед - нагрузка "танк" уже обвалит мост??
---
AlexO, Ну здесь речь уже не о первоначальном расчете по учебнику сопромата, а о сложных системах, призванных проверить уже посчитанное в динамике. (Что скрывать - живьем такие не видел и не щупал, но они есть) ГСЧ в таком случае должен выдавать величины нагрузок от "велосипеда до танка" с определенным законом распределения, которые начинают двигаться по мосту со случайной же скоростью. Дует случайный ветер и т.д. по множествк параметров
Ну да, - бывает и так, что 2 танка безопаснее, чем один. Зависит все от того где они находтся :)
---
Infector, Ну да, - бывает и так, что 2 танка безопаснее, чем один. Зависит все от того где они находтсяВ любом случае - мост, рссчитанный на танк, не нуждается в отдельном просчете для велосипеда.
Или "зависит от того, где находится танк, а где - велосипед"? ))
Тогда грош цена и расчету, и мосту.
---
AlexO, Я про то, что расчет крупного моста в современных условиях обязательно проверяют моделированием. Кроме статической нагрузки (велосипед/танк, по которой считают изначально) есть колебания под действием ветров, проходящего транспорта и т.д. (инач говоря окружающей среды в целом). Про Тахому же наверняка слышали? Сегодня такие объекты стараются моделировать еще до начала строительства. Для статического расчета опасны "танки" в определенных точках конструкции. Для колебательной системы это может оказаться и велосипед, и легковушка, и фура в сочетании с сильным ветром, даже при условии, что танк с тем же ветром дает удовлетворительный результат.
---
Выбор кто остается на трубке, когда все идут обедать. Выручает.
---
Вот еще одна реализация ГСЧ:
http://infostart.ru/public/79727/

Используется для генерации надписи (далее преобразование текста в картинку).
---
Ребят, а я вот хочу спросить в тему. Есть ли возможность использовать в 1С не встроенный ГСЧ, а сторонний, например, код C#? Я для своих ма-а-леньких приложений использую вот такой вот код, что очень помогает создать ГСЧ без повторений:

```1c
    public void RandomSkill()
    {
    Console.WriteLine("случайное число запущено");
    long time1 = DateTime.Now.Ticks;
    long time2 = DateTime.Now.Ticks;
    long time3 = time1;
    int intTime = 0;
    int i_ = 0;
    int startIndex = 0;
    int result = 0;
    int[] massResult = new int[2001];
    int indexMassResult = 0;

    while (i_ < 10000)
    {
    while ((time2 == time1) || (time2 == time3))
    {
    time2 = DateTime.Now.Ticks;
    }
    time3 = time2;
    time1 = DateTime.Now.Ticks;
    try
    {
    startIndex = Convert.ToString(time2).Length;
    startIndex = (startIndex % 2 == 0) ? startIndex / 2 : (startIndex + 1) / 2;
    intTime = Int32.Parse(Convert.ToString(time2).Substring(startIndex));
    }
    catch { intTime = startIndex; };
    Random rnd = new Random(intTime);
    if (i_ % 5 == 0)
    {
    result = rnd.Next(1, 10);
    Console.WriteLine("Итерация ({3}): {2}; result = {0}; intTime = {1}", result, intTime, i_ / 5, i_);
    }
    indexMassResult = (i_ % 5 == 0) ? indexMassResult + 1 : indexMassResult;
    massResult[indexMassResult] = result;
    i_++;
    }
    Console.WriteLine("случайное число завершено успешно.");

    // проверяем, есть ли совпадения в 4 итерациях подряд (i_ кратно 5)
    if (1 == 1) // поставьте 0, если не нужно проверять на совпадения
    {
    Console.WriteLine("Начало проверки на совпадение чисел (на каждые 4 числа подряд)");
    i_ = 3;
    while (i_ < 2000)
    {
    bool b_ = true;
    while (b_)
    {
    int indexIn = i_ - 3;
    int IndexOut = i_ - 2;
    int on eNumberRepeat = 0;
    int twoNumberRepeat = 0;
    int threeNumberRepeat = 0;
    while (indexIn <= 2)
    {
    while (IndexOut <= 3)
    {
    on eNumberRepeat = ((massResult[indexIn] == massResult[IndexOut]) && indexIn == 0) ? oneNumberRepeat + 1 : oneNumberRepeat;
    twoNumberRepeat = ((massResult[indexIn] == massResult[IndexOut]) && indexIn == 1) ? twoNumberRepeat + 1 : twoNumberRepeat;
    threeNumberRepeat = ((massResult[indexIn] == massResult[IndexOut]) && indexIn == 2) ? threeNumberRepeat + 1 : threeNumberRepeat;
    IndexOut++;
    }
    indexIn++;
    IndexOut = indexIn + 1;
    }
    int bothFirst = oneNumberRepeat+twoNumberRepeat;
    int bothSecond = twoNumberRepeat + threeNumberRepeat;
    int bothThird = oneNumberRepeat + threeNumberRepeat;
    int bothAll = oneNumberRepeat + twoNumberRepeat + threeNumberRepeat;
    /*
    if ((oneNumberRepeat != 0) && (twoNumberRepeat != 0) && (threeNumberRepeat != 0)) // например, такая последовательность: 1 1 2 3
    {
    Console.WriteLine("Количество совпадения на 4 итерации подряд\n Числа: {0} {1} {2} {3}\n ---------------", massResult[0], massResult[1], massResult[2], massResult[3]);
    }
    else { Console.WriteLine("Нет совпадений"); }
    /* */
    if ((oneNumberRepeat > 1) || (twoNumberRepeat > 1)) // например, такая последовательность: 1 1 1 3
    {
    Console.WriteLine("Есть совпадения 3х чисел в одной последовательности.\n Числа: {0} {1} {2} {3}\n ---------------", massResult[i_ - 3], massResult[i_ - 2], massResult[i_ - 1], massResult[i_]);
    }
    else { Console.WriteLine("Нет совпадений"); }
    /* */
    /* */
    if ((bothFirst > 1) || (bothSecond > 1) || (bothThird> 1)) // например, такая последовательность: 1 1 2 2
    {
    Console.WriteLine("Есть совпадения 2х пар чисел в одной последовательности.\n Числа: {0} {1} {2} {3}\n ---------------", massResult[i_ - 3], massResult[i_ - 2], massResult[i_ - 1], massResult[i_]);
    }
    else { Console.WriteLine("Нет совпадений"); }
    /* */

    b_ = false;
    }
    i_++;
    }
    Console.WriteLine("Проверка на совпадения чисел - завершена.");
    }
    } // end RandomSkill
```
---
timeforlive, использовать можно все - запускать как будете? 1С не компиллирует и не понимает С#.
---
я и спрашиваю, как в 1с запускать? через сом объект? а запускать исполнительный (ехе) файл.
тогда остается вопрос (который выходит за рамки данной темы) как данные, полученные в виндовс приложении, перенести в 1с. Вероятно, танец с бубном и нужные dll файлы...
---
timeforlive, я и спрашиваю, как в 1с запускать? через сом объект? Никак, кроме указанного способа. И к 1С из С# - по COM, и из 1С - к C# тоже по COM-технологии (предварительно создать COM-сервер в C#).
как данные, полученные в виндовс приложении, перенести в 1с.Капсулируйте в COM данные.
---
timeforlive, а запускать исполнительный (ехе) файл.Напрямую нельзя, а COM-технология в 1С - то еще развлечение: написано студентами - и для студентов. Что-то сложнее "лабораторной работы" в виде примитивов 1С получить от такого COM практически нельзя.
---
timeforlive, определите сначала четко задачу, что из чего нужно получать. я уже запутался, что из чего получать надо и что у вас имеется на руках))). если у вас есть готовое windows-приложение , то по идее уже нужна ВК на C# , которая при генерации данных , будет передавать их через внешнее событие (есть еще вариант записи данных через некое общее хранилище, будь-то файл, БД или что-нибудь еще). но это если есть некое готовое приложение. если нужно генерировать просто случайные числа, то выше я написал как.
---
Не обязательно использовать ВК для вызова события
http://www.forum.mista.ru/topic.php?id=689926&page=1#36
Используя ДобавитьОбработчик
---
Serginio, это я знаю. я не про то. я имел в виду, если у него есть готовое standalone -приложение код которого он менять не может или не хочет, но хочет передать оттуда данные в 1С.
---
Serginio, странно если б не знал. (например вот поиск дает http://forum.infostart.ru/forum24/topic56245/message623428/#message623428 ) ))))
---
Я к тому, что в 8 ке ВК как таковая не нужна. Достаточно COM. Просто в http://infostart.ru/public/238584/
есть возможность использовать любых сборок .Net в том числе и Netовские события
---
Использование сборок .NET в 1С 7.x b 8.x
http://infostart.ru/public/238584/
---
Одно число можно взять через ЗапуститьПриложение, если приложение отдаст его как код возврата. Массив, однако, так не передать.
---
timeforlive, вы уж простите , но код ваш безобразен. если вам нужно генерировать криптостойкие псевдослучайные числа, лучше не делать своего велосипеда(тем более что он страшный), а использовать https://msdn.microsoft.com/ru-ru/library/system.security.cryptography.rngcryptoserviceprovider(v=vs.110).aspx .
тогда генерация в диапазоне чисел int32 например будет так

чтобы использовать это в 1С - есть два пути. один сделать COM сервер (в дотнете это очень легко, по сути достаточно для простых случае пометить класс как COMVisible) , либо (и это вариант я также использовал, но он пригоден только для SQL Server) , написать SQL CLR сборку, написать stored function и через внешние источники в 1С использовать.
---
cool.vlad4, в дополнение - класс RNGCryptoServiceProvider к тому же [ComVisibleAttribute(true)]. не удивлюсь если его напрямую можно создать в 1С. (хотя возможно что и нет. не знаю, не пробовал)
---
Согласен. Проверил на 2000 итераций. Вполне подходит для генерации случайных чисел.
Мой код отличается тем, что из 2000 итераций отсутствует совпадение 4х чисел подряд (т.е., например, 1 1 2 3 - есть одно совпадение).
Числа брал от 1 до 99.

Код msdn имеет 98 совпадений из 2000. Для разных компьютеров по разному, но на моем 98, вот так вот.
Кстати, совпадения происходят в такой (так похожей на ГСЧ) последовательности:
96, 47, 93, 47
1, 46, 1, 96
83, 84, 44, 84

Видно, что через один происходит повторение - а это не есть хорошо в некоторых случаях... Теория вероятности говорит, что и такое бывает, но не 1:20 это должно быть...

Я написал в (76), что использую "ГСЧ без повторений". Мой код не красив и груб, кто-то скажет, что это Анти-паттерн (см. http://lurkmore.to/Анти-паттерн), а я скажу, что это Грязный Хак (см. http://lurkmore.to/Грязный_хак).
Работает? да. При необходимости можно и параметры засунуть дополнительные и прочее. Если приложение в народ давать с исходным кодом, то, вероятно, я бы занялся рефакторингом, но я преследовал иной цели - выполнить ту задачу, которую я поставил в кратчайшее время (этот пост я писал дольше) ^_^
---
timeforlive, у ГПСЧ вроде есть специальные тесты . там надо распределение чисел смотреть, а не повторяемость каких-то чисел. в любом случае собственные исследования это похвально , я серьезно.
---
Если хочешь без повторения то создавай список и удаляй из него выбранный элемент.
Второй вариант это перетасовка дпнных. https://msdn.microsoft.com/ru-ru/library/bb982398.aspx
---
и я себе слабо представляю зачем в 1С-у Console.WriteLine. Короче в текущем виде код использовать нельзя.
---
Еще одно применение ГСЧ - аудиторская выборка. Для случайного отбора среди больших массивов однородных документов.
---
спасибо за ссылки.
наадо на досуге почитать:
Дональд Э. Кнут Глава 3. Случайные числа // Искусство программирования.
---
В статье "Расчет хэш-функции в запросе" приведен Пример 3, который показывает, как можно непосредственно В ЗАПРОСЕ выбирать записи справочника СЛУЧАЙНЫМ (псевдослучайным образом) образом.
Это может помочь решению многих из упомянутых здесь задач, при необходимости использования для решения языка запросов.
---
ildarovich, В статье "Расчет хэш-функции в запросе" приведен Пример 3Опять же, имитация. Нужно поле Дата, да еще в Справочнике, да еще и заполнять надо ))
А Дата сама по себе - "случайная вещь", если обновляется постоянно. А если нет?