抽奖概率的计算抽奖系统 要给定几个概率,一等奖0.1% 二等奖0.2% 三等奖 0.5% 幸运奖 1% 其余不中奖 如何

1个回答

  • /*

    x05 * 下面方法是在考虑奖项有名额限制的情况下

    x05 * 暂定一等奖1名 二等奖 2名 3等级3名 幸运奖10名

    x05 * 中奖方法适用math.random(1000)

    x05 */

    x05Integer one = 1;

    x05 Integer two = 2;

    Integer three = 3;

    x05Integer lucky = 10;

    x05public Integer Lottery(){//返回值:1-一等奖 2-二等奖 3-三等奖 4-幸运奖 0-不中奖

    x05x05Integer ranNum = (int)(Math.random()*1000);

    x05x05System.out.println(ranNum);

    x05x05if(ranNum>=0&&ranNum0)

    x05x05x05x05{

    x05x05x05x05x05one--;

    x05x05x05x05x05return 1;

    x05x05x05x05}

    x05x05x05x05if(two>0)

    x05x05x05x05{x05

    x05x05x05x05x05two--;

    x05x05x05x05x05return 2;

    x05x05x05x05}

    x05x05x05x05if(three>0)

    x05x05x05x05{x05

    x05x05x05x05x05three--;

    x05x05x05x05x05return 3;

    x05x05x05x05}

    x05x05x05x05if(lucky>0)

    x05x05x05x05{

    x05x05x05x05x05lucky--;

    x05x05x05x05x05return 4;

    x05x05x05x05}

    x05x05x05}

    x05x05x05

    x05x05x05if(ranNum>=0&&ranNum0)

    x05x05x05x05{x05

    x05x05x05x05x05two--;

    x05x05x05x05x05return 2;

    x05x05x05x05}

    x05x05x05x05if(three>0)

    x05x05x05x05{x05

    x05x05x05x05x05three--;

    x05x05x05x05x05return 3;

    x05x05x05x05}

    x05x05x05x05if(lucky>0)

    x05x05x05x05{

    x05x05x05x05x05lucky--;

    x05x05x05x05x05return 4;

    x05x05x05x05}

    x05x05x05}

    x05x05x05

    x05x05x05if(ranNum>=0&&ranNum0)

    x05x05x05x05{x05

    x05x05x05x05x05three--;

    x05x05x05x05x05return 3;

    x05x05x05x05}

    x05x05x05x05if(lucky>0)

    x05x05x05x05{

    x05x05x05x05x05lucky--;

    x05x05x05x05x05return 4;

    x05x05x05x05}

    x05x05x05}

    x05x05x05

    x05x05x05if(lucky>0)

    x05x05x05{

    x05x05x05x05lucky--;

    x05x05x05x05return 4;

    x05x05x05}

    x05x05}

    x05x05

    x05x05return 0;

    x05}