最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用C#如何創(chuàng)建人名或其他物體隨機(jī)分組

 更新時(shí)間:2025年01月07日 17:07:54   作者:坐井觀老天  
文章描述了一個(gè)隨機(jī)分配人員到多個(gè)團(tuán)隊(duì)的代碼示例,包括將人員列表隨機(jī)化并根據(jù)組數(shù)分配到不同組,最后按組號(hào)排序顯示結(jié)果

C#創(chuàng)建人名或其他物體隨機(jī)分組

假設(shè)您有一群人,您想將他們隨機(jī)分配到多個(gè)團(tuán)隊(duì)。

public class Randomizer
{
    public static void Randomize<T>(T[] items)
    {
        Random rand = new Random();

        // For each spot in the array, pick
        // a random item to swap into that spot.
        for (int i = 0; i < items.Length - 1; i++)
        {
            int j = rand.Next(i, items.Length);
            T temp = items[i];
            items[i] = items[j];
            items[j] = temp;
        }
    }
}
private void Randomize_Click(object sender, EventArgs e)
{
    // Put the items in an array.
    string[] items = txtItems.Lines;

    // Randomize.
    Randomizer.Randomize(items);

    // Display the result.
    txtResult.Lines = items;
    txtResult.Select(0, 0);
}

此示例使用以下代碼將人員分配到組

// Assign the people to groups.
private void btnAssign_Click(object sender, EventArgs e)
{
    // Get the names into an array.
    int num_people = lstPeople.Items.Count;
    string[] names = new string[num_people];
    lstPeople.Items.CopyTo(names, 0);
    
    // Randomize.
    Randomizer.Randomize(names);

    // Divide the names into groups.
    int num_groups = int.Parse(txtNumGroups.Text);
    lstResult.Items.Clear();
    int group_num = 0;
    for (int i = 0; i < num_people; i++)
    {
        lstResult.Items.Add(group_num + " " + names[i]);
        group_num = ++group_num % num_groups;
    }
}

代碼首先將lstPeople ListBox

中的名稱復(fù)制到字符串?dāng)?shù)組中。然后使用Randomizer.Randommize對(duì)數(shù)組進(jìn)行隨機(jī)化。

然后程序循環(huán)遍歷數(shù)組,將每個(gè)姓名添加到lstResult ListBox中。它將group_num值添加到每個(gè)人的姓名中,為其賦予一個(gè)組號(hào)。然后,它增加group_num并將結(jié)果取模num_groups,因此group_num值循環(huán)遍歷組號(hào) 0、1、2、...、num_groups - 1、0、1、2、...

lstResult ListBox的Sorted屬性設(shè)置為true,因此結(jié)果將按組號(hào)排序顯示。

注意:

  • 如果隊(duì)伍數(shù)不能均勻地分清人數(shù)
  • 那么一些第一名的隊(duì)伍會(huì)比其他隊(duì)伍多一個(gè)人

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

枣强县| 手游| 鹿泉市| 原阳县| 兴安盟| 肥城市| 吴忠市| 和林格尔县| 汝州市| 柞水县| 连南| 彭阳县| 梨树县| 静安区| 资溪县| 泌阳县| 隆回县| 南平市| 普兰店市| 崇明县| 广南县| 阳春市| 邵阳县| 崇仁县| 玉田县| 阿拉尔市| 南开区| 平凉市| 甘洛县| 汪清县| 乐亭县| 仁化县| 杭锦旗| 普定县| 长乐市| 汕头市| 霍州市| 济宁市| 汾阳市| 年辖:市辖区| 鄂温|