猴子选大王
monkeyName(10,5)
function monkeyName(total,kick) {
var total = total;
var kick = kick;
var monkey = [];
for (var i = 1; i <= total; ++i) { //创建猴子数组
monkey.push(i);
}
i = 0;
while (monkey.length > 1) { //在猴子数量大于1的时候进行循环
++i;
let head = monkey.shift(); //猴子报数
if (i % kick != 0) { //判断是否踢出猴子,不提出则把该猴子添加到monkey数组的尾部
monkey.push(head); //继续参加游戏的猴子
}
}
console.log('猴王编号:' + monkey[0]);
return monkey[0]
}
方法2改造
monkeyName(10,5)
function monkeyName(total,kick) {
var total = total;
var kick = kick;
var monkey = [];
for (var i = 1; i <= total; ++i) { //创建猴子数组
monkey.push(i);
}
i = 0;
while (monkey.length > 1) { //在猴子数量大于1的时候进行循环
++i;
let head = monkey.shift(); //猴子报数
if (i - kick != 0) { //判断是否踢出猴子,不提出则把该猴子添加到monkey数组的尾部
monkey.push(head); //继续参加游戏的猴子
}else {
i=0
}
}
console.log('猴王编号:' + monkey[0]);
return monkey[0]
}

浙公网安备 33010602011771号