彩票随机号码生成逻辑

因朋友有买彩票的习惯,故有了如下的代码片段:

#region DLT
        List<int> DLT_List_Red, DLT_List_Blue;
        /// <summary>
        /// DLT生成工具
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void DLT_gene_Click(object sender, RoutedEventArgs e)
        {
            /**
             * 1.Red:35-5;
             * 2.Blue:12-2;
             */
            /*1.初始化*/
            DLT_List_Red = new List<int>();
            DLT_List_Blue = new List<int>();
            for (int i = 1; i <= 35; i++) { DLT_List_Red.Add(i); }
            for (int i = 1; i <= 12; i++) { DLT_List_Blue.Add(i); }
            DLT_textBox_nums.Clear();
            for (int i = 1; i <= 35; i++)
            {
                GetControlObject<TextBox>("DLT_t" + i).Foreground = Brushes.Black;
            }
            for (int i = 1; i <= 12; i++)
            {
                GetControlObject<TextBox>("DLT_t" + i + "_copy").Foreground = Brushes.Black;
            }

            /*2.gene red*/
            var array_red = new int[5];
            
            for (int i = 1; i <= 5; i++) {
                var index=r.Next(35-i+1);
                array_red[i-1] = DLT_List_Red[index];
                DLT_List_Red.RemoveAt(index);
            }
            array_red = (array_red.OrderBy(x => x)).ToArray<int>();
            foreach (int i in array_red)
            {
                GetControlObject<TextBox>("DLT_t" + i).Foreground = Brushes.Yellow;
            }
            /*3.gene blue*/
            var array_blue = new int[2];
            for (int i = 1; i <= 2; i++) {
                var index = r.Next(12 - i + 1);
                array_blue[i - 1] = DLT_List_Blue[index];
                DLT_List_Blue.RemoveAt(index);
            }
            array_blue = (array_blue.OrderBy(x => x)).ToArray<int>();
            foreach (int i in array_blue)
            {
                GetControlObject<TextBox>("DLT_t" + i + "_copy").Foreground = Brushes.Yellow;
            }
            /*测试输出*/
            DLT_textBox_nums.Text = "Red:";
            foreach (var i in array_red) {
                var str = i < 10 ? $"0{i}" : i.ToString();
                DLT_textBox_nums.Text += $"{str},";
            }
            DLT_textBox_nums.Text = DLT_textBox_nums.Text.TrimEnd(',');
            DLT_textBox_nums.Text += "\nBlue:";
            foreach (var i in array_blue) {
                var str = i < 10 ? $"0{i}" : i.ToString();
                DLT_textBox_nums.Text += $"{str},";
            }
            DLT_textBox_nums.Text = DLT_textBox_nums.Text.TrimEnd(',');
            try
            {
                Clipboard.SetText(DLT_textBox_nums.Text);
            } catch { }
        }
        #endregion

 

posted @ 2020-08-03 16:44  nick_JD  阅读(604)  评论(0编辑  收藏  举报