Показать сообщение отдельно
  #13 (permalink)  
Старый 05.06.2014, 19:25
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от рони
так будет 5 for
чуть подправлю:
var input = [1, 2, 3, 4, 5];
var output = [];
var len = input.length;
// var k = 3;

for(var i = 0; i < len - 2; i++) {
    for(var j = i + 1; j < len - 1; j++) {
        for(var q = j + 1; q < len; q++) {
            output.push([
                input[i],
                input[j],
                input[q]
            ]);
        }
    }
}

console.log(JSON.stringify(output));


формула:
var count = c(5) / (c(5 - 3) * c(3));

console.log(count);

function c(n) {
    for(var i = 1, len = n + 1, r = i; i < len; i++) {
        r *= i;
    }
    return r;
}
Тем не менее, не очень правильно задавать k кол-вом циклов
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук

Последний раз редактировалось nerv_, 05.06.2014 в 19:27.
Ответить с цитированием