public double Calculate(NumberPair pair) { int number1 = pair.Number1; int number2 = pair.Number2; switch (Name) { case Operator.Plus: return(number1 + number2); case Operator.Minus: return(number1 - number2); case Operator.Multiplication: return(number1 * number2); case Operator.Division: { if (number2 == 0) { throw new DivideByZeroException(); } return((double)number1 / number2); } default: throw new Exception("unexpected operator"); } }
public bool IsValid(NumberPair pair) { if (Name == Operator.Division && pair.Number2 == 0) { return(false); } return(true); }