• 大小: 29KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-18
  • 语言: 其他
  • 标签: WPF  抽奖  随机数  

资源简介

原文:http://blog.csdn.net/yysyangyangyangshan/article/details/12063343

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Regularexpressions;

namespace TestRandomProbability
{
    class Program
    {
        static void Main(string[] args)
        {
            List> elements = new List>();

            elements.Add(new KeyValuePair(0 0.000002));

            elements.Add(new KeyValuePair(1 0.000004));

            elements.Add(new KeyValuePair(2 0.0001));

            elements.Add(new KeyValuePair(3 0.0001));

            elements.Add(new KeyValuePair(4 0.0003));

            elements.Add(new KeyValuePair(5 0.000004));

            elements.Add(new KeyValuePair(6 0.000004));

            elements.Add(new KeyValuePair(7 0.00016));

            elements.Add(new KeyValuePair(8 0.000008));

            elements.Add(new KeyValuePair(9 0.00012));

            elements.Add(new KeyValuePair(10 0.0));

            elements.Add(new KeyValuePair(11 0.999198));

            Dictionary prize = new Dictionary();

            prize.Add(0 @“奖品1“);

            prize.Add(1 @“奖品2“);

            prize.Add(2 @“奖品3“);

            prize.Add(3 @“奖品4“);

            prize.Add(4 @“奖品5“);

            prize.Add(5 @“奖品6“);

            prize.Add(6 @“奖品7“);

            prize.Add(7 @“奖品8“);

            prize.Add(8 @“奖品9“);

            prize.Add(9 @“奖品10“);

            prize.Add(10 @“奖品11“);

            prize.Add(11 @“谢谢参与!“);

            //求出概率基数

            long basicNumber = 0;

            double[] array = new double[elements.Count];

            int m=0;

            foreach (KeyValuePair item in elements)
            {
                array[m] = item.Value;

                m++;
            }

            basicNumber = ToolMethods.GetbaseNumber(array);


            //判断设置的概率
            double allRate = 0;

            foreach (var item in elements)
            {
                allRate += item.Value;
            }

            if (allRate != 1)
            {
                Console.WriteLine(“奖品概率设置错误!“);

                Console.WriteLine(allRate);

                Console.ReadLine();

                return;
            }

            //抽奖
            Random random = new Random();

            long selectedElement = 0;

            while (true)
            {
                for (int n = 0; n < 20; n++)
                {
                    long diceRoll = ToolMethods.GetRandomNumber(random1basicNumber);

                    long cumulative = 0;

                    for (int i = 0; i < elements.Count; i++)
                    {
                        cumulative += (long)(ele

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     16384  2013-09-26 15:32  TestRandomProbability.suo

     文件        144  2013-09-25 16:42  TestRandomProbability\app.config

     文件       7680  2013-09-26 17:49  TestRandomProbability\bin\Debug\TestRandomProbability.exe

     文件        144  2013-09-25 16:42  TestRandomProbability\bin\Debug\TestRandomProbability.exe.config

     文件      19968  2013-09-26 17:49  TestRandomProbability\bin\Debug\TestRandomProbability.pdb

     文件      11600  2013-09-26 17:49  TestRandomProbability\bin\Debug\TestRandomProbability.vshost.exe

     文件        144  2013-09-25 16:42  TestRandomProbability\bin\Debug\TestRandomProbability.vshost.exe.config

     文件        490  2010-03-17 22:39  TestRandomProbability\bin\Debug\TestRandomProbability.vshost.exe.manifest

     文件       5899  2013-09-26 17:49  TestRandomProbability\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        726  2013-09-26 17:49  TestRandomProbability\obj\x86\Debug\TestRandomProbability.csproj.FileListAbsolute.txt

     文件       7680  2013-09-26 17:49  TestRandomProbability\obj\x86\Debug\TestRandomProbability.exe

     文件      19968  2013-09-26 17:49  TestRandomProbability\obj\x86\Debug\TestRandomProbability.pdb

     文件       3680  2013-09-26 17:48  TestRandomProbability\Program.cs

     文件       1374  2013-09-25 09:27  TestRandomProbability\Properties\AssemblyInfo.cs

     文件       2621  2013-09-26 09:08  TestRandomProbability\TestRandomProbability.csproj

     文件       3035  2013-09-26 09:27  TestRandomProbability\ToolMethods.cs

     文件        905  2013-09-25 09:27  TestRandomProbability.sln

     目录          0  2013-09-25 09:27  TestRandomProbability\obj\x86\Debug\TempPE

     目录          0  2013-09-26 17:49  TestRandomProbability\obj\x86\Debug

     目录          0  2013-09-25 16:42  TestRandomProbability\bin\Debug

     目录          0  2013-09-25 09:27  TestRandomProbability\obj\x86

     目录          0  2013-09-25 09:27  TestRandomProbability\bin

     目录          0  2013-09-25 09:27  TestRandomProbability\obj

     目录          0  2013-09-25 09:27  TestRandomProbability\Properties

     目录          0  2013-09-26 09:02  TestRandomProbability

----------- ---------  ---------- -----  ----

               102442                    25


评论

共有 条评论