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;
 }
Example #2
0
 public static function reduce($numerator, $denominator)
 {
     $lcm = MathFuncs::lcm($numerator, $denominator);
     $denominator /= $lcm;
     $numerator /= $lcm;
     if ($denominator != 1) {
         return "{$numerator}/{$denominator}";
     } else {
         return $numerator;
     }
 }