嘿,所以我正在制作一个因式分解程序,我想知道是否有人可以给我任何关于有效方法的想法,以找到两个数字与指定数字的倍数,并添加到指定的数字。
例如我可能有
(a)(b) = 6
a + b = 5
所以基本上我只需要一种方法来找到 a 和 b 值。在这种情况下,它们将是 2 和 3。
谁能给我任何关于从哪里开始的想法?还必须考虑使用负数。
原文由 Belgin Fish 发布,翻译遵循 CC BY-SA 4.0 许可协议
嘿,所以我正在制作一个因式分解程序,我想知道是否有人可以给我任何关于有效方法的想法,以找到两个数字与指定数字的倍数,并添加到指定的数字。
例如我可能有
(a)(b) = 6
a + b = 5
所以基本上我只需要一种方法来找到 a 和 b 值。在这种情况下,它们将是 2 和 3。
谁能给我任何关于从哪里开始的想法?还必须考虑使用负数。
原文由 Belgin Fish 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于乘法,我建议使用模运算符 (%) 来确定哪些数字均分到目标数字中,例如:
$factors = array();
for($i = 0; $i < $target; $i++){
if($target % $i == 0){
$temp = array()
$a = $i;
$b = $target / $i;
$temp["a"] = $a;
$temp["b"] = $b;
$temp["index"] = $i;
array_push($factors, $temp);
}
}
这将为您留下一系列目标数字的因素。
原文由 Brendon Dugan 发布,翻译遵循 CC BY-SA 3.0 许可协议
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
2 回答793 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.3k 阅读
1 回答698 阅读✓ 已解决
不需要循环,只需使用简单的数学来求解这个方程组:
a*b = 我;
a+b = j;
a = j/b;
a = ib;
j/b = ib;所以:
b + j/b + i = 0
b^2 + i*b + j = 0
从这里,它是一个二次方程,找到 b (只需实现 二次方程公式)并从那里得到 a 的值是微不足道 的。
你去:
真人实景:
http://codepad.org/JBxMgHBd