![]() |
|
||||||||||
|
|||||
|
друзья. в предпоследнем кадре получается массив all_people.
есть условие, если элементов больше 32, то весь массив разделить надо на 2 равных массива, но при этом что бы это было случайным образом. в последнем кадре в дин.поле выводится либо 1 массив, где элементов 32 и меньше, либо 2 дин.поля с 2-мя массивами одинаковой размерности. если не запутались, пожалуйста, помогите это сделать. спасибо огромное. |
|
|||||
|
Стоп. А что должно определяться случайным образом?
__________________
судью - на мыло, из игроков - вить веревки. |
|
|||||
|
все элементы самого первого массива all_people, если их больше 32 должны быть разбросаны в all_people1 и all_people2 поровну при этом туда они должны забиваться случайно, т.е. например all_people1() может содержать all_people[1], all_people[30], all_people[41] и т.д.
как теперь? понятнее? спасибо. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
dissect = function (items) {
var heap = items.concat();
var result = [[], []];
for (var i = 0; i<items.length; i++) {
var rnd = random(heap.length);
result[Number(Boolean(i%2))].push(heap[rnd]);
heap.splice(rnd, 1);
}
return result;
};
//
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
b = dissect(a);
//
trace("part1 : "+b[0]);
trace("part2 : "+b[1]);
Последний раз редактировалось Nox Noctis; 06.04.2004 в 23:42. |
|
|||||
|
Nox, ты как всегда на высоте. Спасибо огромное.
|
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
если результирующие массивы сами по себе перемешивать не обязательно, то так оптимальнее будет:
|
![]() |
Часовой пояс GMT +4, время: 07:55. |
|
|
« Предыдущая тема | Следующая тема » |
|
|