您好,欢迎访问一九零五行业门户网

PHP约瑟夫小游戏的代码示例

本篇文章给大家带来的内容是关于php约瑟夫小游戏的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
30 个人在一条船上,超载,需要 15 人下船。于是人们排成一队,排队的位置即为他们的编号。报数,从 1 开始,数到 9 的人下船。如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?
$numberstart = 30; //开始的人数$numberlive = 15; //最终剩下的人数$numkill = 9; //"中奖"号码$peoplelist = [];for($i=1; $i<=$numberstart; $i++){ $peoplelist[$i]=1; //1表示生 0表示死}$numsay=0;//报号$i =1;//索引(人员位置编号,相当于枪指向谁)$maxindex = $numberstart;while (true){ if($i > $maxindex ){//循环一圈后,重新开始 $i = 1; } if($numberstart==$numberlive){//游戏结束条件 break; } if($peoplelist[$i]==0){//如果这个人已经"离开"了,让下一个人报号 $i++; continue; } $numsay++; if($numsay==$numkill){ $peoplelist[$i] = 0; $numsay = 0; echo $i.'号下船了'.php_eol; $numberstart--; } $i++;}print_r($peoplelist);/*9号下船了18号下船了27号下船了6号下船了16号下船了26号下船了7号下船了19号下船了30号下船了12号下船了24号下船了8号下船了22号下船了5号下船了23号下船了*/
以上就是php约瑟夫小游戏的代码示例的详细内容。
其它类似信息

推荐信息