PHP数组应用——猴子选大王
N只猴子围成一圈,依次报数,报到数字m的猴子出局,直到剩下一只猴子就是大王。要求:设计程序,可以指定猴子数和出局数字,并打印出最后的大王。
<?php
// 猴子选大王
// 生成猴子数组
$monkey = (range(1, 233));
foreach ($monkey as $key => $value) {
$monkey[$key]='monkey'.$value;
}
print_r($monkey);
// 设定出局数字
$out = 24;
for($i=1;$i<=$out;$i++){
// echo $i,'<br/>';
// echo '当前指向的值是:',current($monkey),'<br/>';
if(count($monkey)< 2){
reset($monkey);
echo '大王是:',current($monkey),'<br/>';
break;
}
//返回当前值并将指针向后移动
$rs =each($monkey) ;
if(!$rs){
// 如果已到数组末尾,则重置指针
// echo '<br/>到末尾,重置指针<br/>';
reset($monkey);
$rs =each($monkey) ;
}
list($k,$v)=$rs;
if($i==$out){
echo '<br/>==========<br/>';
unset($monkey[$k]);
print_r($monkey);
$i=0;
}
// usleep(100000);
}
今天花了两个小时终于鼓捣出来了,程序写得有些冗长,但能够做出来我已经很开心了,接下来要做的就是继续沉心静气,继续练习!

浙公网安备 33010602011771号