扑克牌的玩法速算24点:一副扑克中随便取出四张牌,通过加减乘除最后得到数字24。如3、3、6、10可组成(10—6÷3)×3=24等。
这个就和我要说的数列的四则运算有一定异同,二者区别是四则运算是可以除±*/外加一个空的。
886 → 8×86= 688
621 → 6×21= 126
351 → 3×51= 153
求位于 1000~9999,满足上述条件的数。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script language="JavaScript">
window.onload = function() {
// alert(document.getElementById("show").innerHTML);
var op = ["+", "-", "*", "/", ""];
for(i = 1000; i < 10000; i++) {
var c = String(i);
for(j = 0; j < op.length; j++) {
for(k = 0; k < op.length; k++) {
for(l = 0; l < op.length; l++) {
val = c.charAt(3) + op[j] + c.charAt(2) + op[k] +
c.charAt(1) + op[l] + c.charAt(0);
if(val.length > 4) { /* 一定要插入 1 个运算符 */
if(i == eval(val)) {
alert(i + ";" + eval(val))
document.getElementById("show").innerHTML = (val + " = " + i);
// console.log(val + " = " + i);
}
}
}
}
}
}
}
</script>
</head>
<body>
<label id="show">1</label>
</body>
</html>
最后得到结果5 * 9 * 31=1395