Показать сообщение отдельно
  #11 (permalink)  
Старый 03.08.2014, 16:32
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,149

Chisarat,
в среднем от 2 до 5 попыток сгенерировать одно подходящее число ... а если неповезёт, зациклимся?

function inArray(arr, num){
				for (var i = 0; i < arr.length; i++) {
					if (num == arr[i]) return true;
				};
				return false;
			}

		function createRand(randLength, min, max){
			var randArray = [],
				i = 0;
			if (randLength>(max-min+1)) {
				return null;
			}
            var x = 0;
			while (i < randLength) { x++
				var rand = Math.floor(Math.random() * (max - min + 1)) + min;
				if (!(inArray(randArray,rand))){
					i++;
					randArray.unshift(rand);
				}
			};
            alert([randLength,x]) //длина и число генераций
			return randArray;
		}
createRand(100, 0, 99)
Ответить с цитированием