/** * Rend la factorisation plus compacte et peut-être jolie * @param Polynome $P1 Le facteur 1 * @param Polynome $P2 Le facteur 2 * @param Polynome $P3 Le facteur 3 * @return string La représentation factorisée du polynome */ function prettyFactors($P1, $P2, $P3) { // echo $P1."<br/>".$P2."<br/>".$P3."<br/>"; if ($P1->equals($P2) && $P1->equals($P3)) { return prettyPolynome($P1) . "³"; } elseif ($P1->equals($P2) && $P2->equals($P3->multNumber(-1))) { return "- " . prettyPolynome($P1) . "³"; } elseif ($P1->equals($P2->multNumber(-1)) && $P1->equals($P3)) { return "- " . prettyPolynome($P1) . "³"; } elseif ($P1->equals($P2->multNumber(-1)) && $P2->equals($P3)) { return prettyPolynome($P1) . "³"; } elseif ($P1->equals($P2) && !$P1->equals($P3)) { return prettyPolynome($P1) . "²" . prettyPolynome($P3); } elseif (!$P1->equals($P2) && $P1->equals($P3)) { return prettyPolynome($P1) . "²" . prettyPolynome($P2); } elseif ($P1->equals($P2->multNumber(-1)) && !$P1->equals($P3) && !$P2->equals($P3)) { return "- " . prettyPolynome($P1) . "²" . prettyPolynome($P3); } elseif ($P2->equals($P3->multNumber(-1)) && !$P1->equals($P3) && !$P1->equals($P2)) { return "- " . prettyPolynome($P3) . "²" . prettyPolynome($P1); } return prettyPolynome($P1) . prettyPolynome($P2) . prettyPolynome($P3); }