コード例 #1
0
ファイル: Program.cs プロジェクト: dangson10/Express2
        static void Main(string[] args)
        {
            // (3*x^2 + 7) / (x + 5)   82 / 10 = 8.2
            //Expression exp = new DivExpr(
            //                    new AddExpr(
            //                        new MonomialExpr(3, 2),
            //                        new ConstExpr(7)),
            //                    new AddExpr(
            //                        new MonomialExpr(1, 1),
            //                        new ConstExpr(5)));

            //double result = exp.Evaluate(5);
            //Expression exp2 = exp.Derive();

            //Console.WriteLine(result);
            //Console.WriteLine("f(x)=" + exp.ToString());
            //Console.WriteLine("f'(x)=" + exp2.ToString());


            //Expression exp3 = new DivExpr(
            //                      new AddExpr(
            //                          new MonomialExpr(1, 2),
            //                          new ConstExpr(2)),
            //                      new AddExpr(
            //                          new MonomialExpr(1, 1),
            //                          new ConstExpr(1)));
            //Expression exp4 = new DivExpr(
            //                  new AddExpr(
            //                      exp3,
            //                      new ConstExpr(10)),
            //                  new AddExpr(
            //                      new MonomialExpr(1, 2),
            //                      new ConstExpr(5)));
            //Console.WriteLine(exp4.ToString());

            //Expression expResult = exp4.Derive();
            //Console.WriteLine(expResult.ToString());

            Expression exp3 = new DivExpr(
                new AddExpr(
                    MonomialExpr.createObject(1, 2),
                    ConstExpr.createObject(2)),
                new AddExpr(
                    MonomialExpr.createObject(1, 1),
                    ConstExpr.createObject(1)));

            Expression exp4 = new DivExpr(
                new AddExpr(
                    exp3,
                    ConstExpr.createObject(10)),
                new AddExpr(
                    MonomialExpr.createObject(1, 2),
                    ConstExpr.createObject(5)));

            Console.WriteLine(exp4.ToString());

            Expression expResult = exp4.Derive();

            Console.WriteLine(expResult.ToString());
        }
コード例 #2
0
ファイル: MonomialExpr.cs プロジェクト: dangson10/Express2
 public static Expression createObject(double a, double n)
 {
     if (a == 0 || n == 0)
     {
         return(ConstExpr.createObject(a));
     }
     return(new MonomialExpr(a, n));
 }
コード例 #3
0
 public static Expression createObject(double val_a, double val_n)
 {
     if (val_a == 0 || val_n == 0)
     {
         return(ConstExpr.createObject(val_a));
     }
     return(new MonomialExpr(val_a, val_n));
 }
コード例 #4
0
 public static ConstExpr getZero()
 {
     if (ZERO == null)
     {
         ZERO = new ConstExpr(0);
     }
     return(ZERO);
 }
コード例 #5
0
 public static Expression createObject(double value)
 {
     if (value == 0)
     {
         ConstExpr.getZero();
     }
     return(new ConstExpr(value));
 }
コード例 #6
0
 public static Expression createObject(double value)
 {
     if (value == 0)
     {
         if (ZERO == null)
             ZERO = new ConstExpr(0);
         return ZERO;
     }
     return new ConstExpr(value);
 }
コード例 #7
0
 public static ConstExpr getZero()
 {
     if (ZERO == null)
         ZERO = new ConstExpr(0);
     return ZERO;
 }