Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Рандомные неповторяющиеся числа (https://javascript.ru/forum/jquery/32302-randomnye-nepovtoryayushhiesya-chisla.html)

рони 03.08.2014 16:32

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)


Часовой пояс GMT +3, время: 11:49.