Подобные вопросы задавались ранее, но я не ответил так, как я могу с ними работать.
У меня есть группы по 3, 4, 5 и 6, и в каждой группе должно быть 50% мальчиков и 50% девочек. Пользователь определяет количество каждой группы, а также количество мальчиков и девочек.
Например: 12 девочек, 15 мальчиков, 1 * 3, 2 * 4, 2 * 5 и 1 * 6 групп.
У меня уже есть экземпляр Random
. Как теперь я могу равномерно распределить случайно выбранных мальчиков / девочек по группам?
Случайно для мальчиков и группы из 4 человек:
//for each group of 4
for (int i = 0; i < tischgruppenVierer; i++)
{
//only do this two times because 50% boys
for (int j = 0; j < 4/2; j++)
{
var picked = namesBoys[random.Next(0, namesBoys.Count())];
namesBoys.Remove(picked); //no duplicates
picked = new TischVier().student;
}
}
и класс TischVier
:
public class TischVier
{
public string student;
}
Надеюсь, этого кода вам достаточно, потому что я жестко закодировал его для каждой группы.
Я ценю каждую мысль, потому что я близок к отчаянию.