# 背景
来源于一道小学数学题,实际做起来灰常的简单,但我还是想通过 php 代码来折腾一下
# 代码
<?php | |
// 计算 8 () 3 () 4=15 () 3 () 15 括号填写的符号且不重复 | |
$a = 8; | |
$b = 3; | |
$c = 4; | |
$d = 15; | |
$dd = array('+','-','*','/'); | |
while(true) | |
{ | |
$tt = []; // 空数组 | |
$t1 = $dd[rand(0,3)]; | |
$t2 = $dd[rand(0,3)]; | |
$t3 = $dd[rand(0,3)]; | |
$t4 = $dd[rand(0,3)]; | |
array_push($tt,$t1,$t2,$t3,$t4); | |
// 判断是否有重复值 | |
if (count(array_unique($tt)) != count($tt)) | |
{ | |
continue; // 继续循环 | |
} | |
// 左边 | |
$left = "8{$t1}3{$t2}4;"; | |
$left2 = eval("return ".$left); | |
// 右边 | |
$right = "15{$t3}3{$t4}15;"; | |
$right2 = eval("return ".$right); | |
if ($left2 == $right2) | |
{ | |
echo $left2; | |
echo '<br/>'; | |
echo $right2; | |
echo '<br/>'; | |
echo trim($left,';').'='.trim($right,';'); | |
break; | |
} | |
} |
如果有更好的方法,还望朋友您不吝赐教!