Генератор случайных чисел для диапазона с дробными и отрицательными числами

4 ChOP 16 2
Функция Генератор(КоличествоСимволовПослеЗапятой = 0, НижняяГраница, ВерхняяГраница )
	
		Множитель = 1;
		
		Пока КоличествоСимволовПослеЗапятой <> 0 Цикл
			
			КоличествоСимволовПослеЗапятой = КоличествоСимволовПослеЗапятой - 1;
			
			Множитель = Множитель*10;
			
		КонецЦикла;
		
		Генератор = Новый ГенераторСлучайныхЧисел();
		
		НижняяГраница = НижняяГраница * Множитель;
		ВерхняяГраница = ВерхняяГраница * Множитель;
		
		Если НижняяГраница > ВерхняяГраница Тогда
			
			Возврат Неопределено;
		
		ИначеЕсли НижняяГраница < 0 Тогда
			
			НижняяГраница = 0;
			ВерхняяГраница = ВерхняяГраница - НижняяГраница;
			
			РезультатГенератора = Генератор.СлучайноеЧисло(НижняяГраница, ВерхняяГраница)/Множитель - НижняяГраница;
							
		ИначеЕсли НижняяГраница >= 0 Тогда
			
			РезультатГенератора = Генератор.СлучайноеЧисло(НижняяГраница, ВерхняяГраница)/Множитель;
									
		КонецЕсли;

		Возврат РезультатГенератора ;

КонецФункции
TurboConf - расширение Конфигуратора 1С

Похожие публикации

Генератор случайных символов

Колонка сжато

Модератору