Пример #1
0
 public override void Interpret(ContextC ContextC)
 {
     if (ContextC.Formula.Contains("A"))
     {
         ContextC.TotalPoint += 5;
     }
 }
Пример #2
0
 static void RunExpression(ContextC ContextC)
 {
     foreach (RoleExpression expression in CreateExpressionTree(ContextC.Formula))
     {
         expression.Interpret(ContextC);// TerminalExpression tiplerine ait harf sembolleri buradaki metod çağrısındada gönderilebilir.
     }
     Console.WriteLine("{0} için maliyet puanı {1}", ContextC.Formula, ContextC.TotalPoint);
 }
Пример #3
0
        public static void Main(string[] args)
        {
            Console.WriteLine("Architecture = 5, Consultant=10, Senior=15,Developer=20\n");
            // 1 Architect, 1 Consultan, 2 Senior Developer , 4 Junior Developer
            ContextC ContextC = new ContextC {
                Formula = "ACSSDDDD"
            };

            RunExpression(ContextC);

            // 1 Consultant, 1 Senior Developer, 2 Developer
            ContextC = new ContextC {
                Formula = "CSDD"
            };
            RunExpression(ContextC);

            // 1 Consultant, 1 Senior Developer, 2 Developer
            ContextC = new ContextC {
                Formula = "SD"
            };
            RunExpression(ContextC);

            Console.ReadKey();
        }
Пример #4
0
 public abstract void Interpret(ContextC ContextC);