示例#1
0
 protected override bool CheckValidQuestion(List <int> coefficients, PolynomialEquationSolution solution)
 {
     if (parameters.RequireAnIntegerRoot && !solution.Roots.Exists(root => root.IsInteger))
     {
         return(false);
     }
     else if (parameters.RequireARealRoot && !solution.Roots.Exists(root => root.ImaginaryPart == 0))
     {
         return(false);
     }
     else if (parameters.RequireAComplexRoot && !solution.Roots.Exists(root => root.ImaginaryPart != 0))
     {
         return(false);
     }
     else if (parameters.RequireOnlyComplexRoots && solution.Roots.Exists(root => root.ImaginaryPart == 0))
     {
         return(false);
     }
     else if (parameters.RequireADoubleRoot && !solution.Roots.Exists(root => root.Degree > 1))
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
示例#2
0
 public PolynomialEquation(List <int> coefficients, PolynomialEquationSolution solution)
 {
     Coefficients = coefficients;
     Solution     = solution;
 }