Функция Случайное число, RANDOM, RND для 1С 7.7


В 1С нет функции случайного числа. представляю Вам свою. основана на получении идентификатора и из него случайного числа. от 0 до 10, от 0 до 100 и от 0 до 1000.

функция ПолучитьСлучайноеЧисло (ВерхняяВилка=1);

    Если
ЗагрузитьВнешнююКомпоненту("V7Plus.dll") <> 1 Тогда
       
Сообщить("Ошибка загрузки компоненты V7+");
        возврат
0;
    КонецЕсли;

   
НТТРСистИнформ = СоздатьОбъект("AddIn.V7SysInfo");

   
//получим уникальный идентификатор:
   
СлучайнаяСтрока = СокрЛП(НТТРСистИнформ.СоздатьGUID()); // вида:11CADC0A-96C4-4547-81E4-889CB89634BB

    //Суммируем коды всех символов этой случайной строки
   
Куча=1;
    для
СчетчикСимволов=1 по СтрДлина(СлучайнаяСтрока) цикл
       
куча = куча+КодСимв(Сред(СлучайнаяСтрока,СчетчикСимволов,1))*СчетчикСимволов;
    Конеццикла;

    возврат
куча % ВерхняяВилка;
конецфункции

//*******************************************
Процедура Сформировать()
   
НеБолееТысячи = 1000;
   
НеБолееСта = 100;
   
НеБолееДесяти = 10;

   
сообщить("Случайное число не более тысячи:"+ПолучитьСлучайноеЧисло(НеБолееТысячи));
   
сообщить("Случайное число не более ста:"+ПолучитьСлучайноеЧисло(НеБолееСта));
   
сообщить("Случайное число не более Десяти:"+ПолучитьСлучайноеЧисло(НеБолееДесяти));
КонецПроцедуры

Файлы обработки:

-