zoukankan      html  css  js  c++  java
  • php 随机数中奖demo演示

     感谢https://blog.csdn.net/z960339491/article/details/69511491提供的思路,应该是java,于我不合适,写了php

    <?php
    // 中奖概率的百分比的百
    $a = 100;
    // 中奖基数最小值
    $min = 1;
    // 中奖基数最大值
    $max = 10000;
    // 下标记录,因为从最小值开始,所以为$min
    $index = $min;
    // 假定有如下商品
    $arr[] = array("name"=>"商品1","gailv"=>5);
    $arr[] = array("name"=>"商品2","gailv"=>10);
    $arr[] = array("name"=>"商品3","gailv"=>15);
    $arr[] = array("name"=>"商品4","gailv"=>20);
    $arr[] = array("name"=>"商品5","gailv"=>50);
    
    // 循环为奖品数组附加中奖基数区间值
    foreach($arr as $k=>$v){
        $jian = $max*$v['gailv']/$a;
        $arr[$k]['begin'] = $index;
        $arr[$k]['end'] = $index+$jian-1;
        $index = $index+$jian;
    }
    // 输出商品列表信息
    // var_dump($arr);
    
    // 得到一个随机数,起始值为基数的最小和最大值
    $jiang = rand($min,$max);
    
    // 记录中奖商品下标
    $jiang_index = false;
    // 循环对比随机数位于哪个商品的区间基数内
    foreach ($arr as $k => $v) {
        if($jiang>=$v['begin'] && $jiang<=$v['end']){
            $jiang_index = $k;
            break;
        }
    }
    
    // 判断中奖商品
    if($jiang_index==false){
        echo "谢谢参与";
    }else{
        echo $arr[$jiang_index]['name'];
    }
    
    ?>
  • 相关阅读:
    山东省第三届ACM省赛The Best Seat in ACM Contest
    Rescue The Princess(2013年山东省第四届ACM大学生程序设计竞赛A题)
    自定义颜色(UIColor)
    调用主程序的委托
    设置View的背景颜色
    基本控件_UIImageView
    CGRect
    屏幕尺寸
    UIScrollView 原理
    设置将警告当做Error来对待
  • 原文地址:https://www.cnblogs.com/zonglonglong/p/9488077.html
Copyright © 2011-2022 走看看