コード例 #1
0
        public override double F(double x)
        {
            var a = base.F(x);
            var b = Input2.F(x);

            switch (Type)
            {
            case CombinationType.Add:
                return(a + b);

            case CombinationType.Substract:
                return(a - b);

            case CombinationType.Multiply:
                return(a * b);

            case CombinationType.Divide:
                // ReSharper disable once CompareOfFloatsByEqualityOperator
                if (b == 0.0)
                {
                    return(double.NaN);
                }
                return(a / b);

            default:
                return(double.NaN);
            }
        }