public function getTestQuestion() { $expr = $this->questionDefn->question; $expr = $this->substituteValues($expr); $question = MathFuncs::cleanUp($expr); $expr = $this->questionDefn->answer; $expr = $this->substituteValues($expr); $answer = $expr; $numSolutions = count($this->solutionArray); for ($i = 0; $i < $numSolutions; $i++) { $soln = $this->solutionArray[$i]; $soln = $this->substituteValues($soln); $this->solutionArray[$i] = $soln; } $problem = new Question($question, $answer, $this->questionDefn->solutionFn, $this->solutionArray, $this->questionDefn->flags); $problem->templateId = $this->questionDefn->templateId; return $problem; }
public static function reduce($numerator, $denominator) { $lcm = MathFuncs::lcm($numerator, $denominator); $denominator /= $lcm; $numerator /= $lcm; if ($denominator != 1) { return "{$numerator}/{$denominator}"; } else { return $numerator; } }