Показать сообщение отдельно
  #3 (permalink)  
Старый 23.12.2020, 09:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109


<pre>
<script>
function splitSet  (set) {
  const random = a => Math.trunc(Math.random() * a),
  sort = (a, b) => a - b;
  let {length} = set = set.slice(0), ar = [], n = 1 + random(length - 1);
  for (let i = 0; i < n; i++) {
  let k = random(length - i);
  ar.push(...set.splice(k, 1))
  }
  return [set, ar.sort(sort)];
}
for (let i = 0; i < 25; i++) {
let [s1, s2] = splitSet([1,2,3,4,5,6,7])

document.write(`[[${s1}],[${s2}]]<br>`)
}
</script>
</pre>

Последний раз редактировалось рони, 23.12.2020 в 10:12. Причина: добавил sort
Ответить с цитированием