Методом СлучайноеЧисло в 1С формирует числа целые в диапазоне (0, 4294967295).
Столкнулся с заданием сгенерировать в диапазоне с отрицательными числами и загнать все это в таблицу значений. Долго думать не стал, просто сгенерировал массив с индексами ТаблицыЗначений и строки с этими индексами умножил на (-1) .
&НаКлиенте
Процедура ЗаполнитьСписок(Команда)
Генератор = Новый ГенераторСлучайныхЧисел();
ГенераторОтр = Новый ГенераторСлучайныхЧисел();
МассивОтр = Новый Массив;
Если СписокДляВыводаЧисел.Количество() <> 0 Тогда
СписокДляВыводаЧисел.Очистить();
МассивОтр.Очистить();
КонецЕсли;
Для Число = 1 По ПолеДляВводаЧисла Цикл
МассивОтр.Добавить(Генератор.СлучайноеЧисло(1, ПолеДляВводаЧисла));
НоваяСтрока = СписокДляВыводаЧисел.Добавить();
НоваяСтрока.Числа = Генератор.СлучайноеЧисло(1, pow(ПолеДляВводаЧисла, 2));
КонецЦикла;
Для каждого Строка Из СписокДляВыводаЧисел Цикл
Для каждого Число Из МассивОтр Цикл
Если СписокДляВыводаЧисел.Индекс(Строка) = Число Тогда
Строка.Числа = Строка.Числа * (-1);
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецПроцедуры
1С Сделать генерацию случайных чисел в диапозоне с отрицательным значением
16 августа 202416 авг 2024
111
~1 мин