示例#1
0
 public override CalculationResult Divide(NumberResult second)
 {
     if (string.IsNullOrEmpty(this.Value))
     {
         return(new NumberResult(0));
     }
     throw new Exception("Can`t divide strings.");
 }
示例#2
0
 public override BoolResult IsLess(NumberResult second)
 {
     if (string.IsNullOrEmpty(this.Value))
     {
         return(new BoolResult(false));
     }
     return(new BoolResult(false));
 }
示例#3
0
        public override CalculationResult Divide(NumberResult second)
        {
            var secondValue = double.Parse(second.Value);

            if (secondValue == 0)
            {
                return(new NumberResult(0));
            }
            return(new NumberResult(double.Parse(this.Value) / secondValue));
        }
示例#4
0
 public override CalculationResult Multiply(NumberResult second)
 {
     if (int.TryParse(second.Value, out var res))
     {
         return(new StringResult(string.Join("", Enumerable.Repeat(this.Value, res))));
     }
     else
     {
         throw new Exception("Cant multiply number and string.");
     }
 }
示例#5
0
 public override CalculationResult Substract(NumberResult second)
 {
     if (string.IsNullOrEmpty(this.Value))
     {
         return(new NumberResult(0 - double.Parse(second.Value)));
     }
     if (double.TryParse(this.Value, out _))
     {
         return(new NumberResult(double.Parse(Value) - double.Parse(second.Value)));
     }
     throw new Exception("Can`t substract Strings.");
 }
示例#6
0
 public override CalculationResult Add(NumberResult second)
 {
     return(new StringResult(this.Value + second.Value));
 }
示例#7
0
 public override CalculationResult Divide(NumberResult second)
 {
     throw new Exception("Can`t divide dates.");
 }
 public abstract BoolResult IsBigger(NumberResult second);
 public abstract CalculationResult Multiply(NumberResult second);
示例#10
0
 public override CalculationResult Multiply(NumberResult second)
 {
     throw new Exception("Can`t multiply dates.");
 }
示例#11
0
 public override CalculationResult Substract(NumberResult second)
 {
     throw new Exception("Can`t substract Date and Number.");
 }
示例#12
0
 public override CalculationResult Add(NumberResult second)
 {
     throw new Exception("Can`t add date and number");
 }
示例#13
0
 public override BoolResult IsLess(NumberResult second)
 {
     return(new BoolResult(true));
 }
示例#14
0
 public override BoolResult IsBigger(NumberResult second)
 {
     return(new BoolResult(false));
 }
示例#15
0
 public override BoolResult IsLess(NumberResult second)
 {
     return(new BoolResult(double.Parse(this.Value) < double.Parse(second.Value)));
 }
 public abstract CalculationResult Substract(NumberResult second);
示例#17
0
 public override CalculationResult Substract(NumberResult second)
 {
     return(new NumberResult(double.Parse(this.Value) - double.Parse(second.Value)));
 }
 public abstract CalculationResult Divide(NumberResult second);
示例#19
0
 public override CalculationResult Multiply(NumberResult second)
 {
     return(new NumberResult(double.Parse(this.Value) * double.Parse(second.Value)));
 }
 public abstract BoolResult IsLess(NumberResult second);
示例#21
0
 public override CalculationResult Add(NumberResult second)
 {
     throw new Exception("Can`t add bools.");
 }