大家对 C# 中奖率的算法 有什么好的想法,来说说。我的项目里有个商品表,商品表里设置中奖率50% ,这个字段随便填写,只要是% 里面数值型的,这是后台添加。到前台要根据这个中奖率来换算是否中奖。这个要怎么实现呢?有好的想法说来听听。

解决方案 »

  1.   

    到前台要根据这个中奖率来换算是否中奖你的意思是,首先每个商品有自己的一个中奖率,然后前台客户进行一个类似摇奖的功能,获得一个抽奖的号码,然后判断这号码是否在你设置的中奖号码里面
    static void Main(string[] args)
            {
                int cusNum = 56;  //客户抽奖号码
                string cen = "30%";  //某商品中奖概率
                Random rd = new Random();
                int r = rd.Next(0, 100);
                if (cusNum < Convert.ToInt32(cen.Replace("%", "")))
                {
                    Console.WriteLine("中奖号码:{0}", cusNum);
                }
                else
                {
                    Console.WriteLine("没中奖");
                }
                Console.Read();
            }
      

  2.   

    你的意思,是不是设一个中奖率,然后有多少人参加,取根据这个中奖率,设置最大有多少个人中奖,然后随时取出中奖的人?select top (根据参加的人数*中奖率) from 参加人的记录 ORDER BY NEWID() ASC试试
      

  3.   


    进入个人申请商品就按中奖率来自动抽奖?
    static void Main(string[] args)
            {
                string cen = "30%";  //某商品中奖概率
                Random rd = new Random();
                int r = rd.Next(0, 100);
                if (r < Convert.ToInt32(cen.Replace("%", "")))
                {
                    Console.WriteLine("中奖号码:{0}", r);
                }
                else
                {
                    Console.WriteLine("没中奖");
                }
                Console.Read();
            }
    你程序直接帮这个客户抽一个号码,并判断是否在中奖率之内,不就可以了嘛,(3L代码有点错误)
      

  4.   

    很简单,做一个计数器count
    50%几率那就是if(count%2==0) {//中奖...}
    用户是感觉不出来的