Exemplo n.º 1
0
        public static void printTree(DTNode root)
        {
            if (root.getChildren().Count == 0)
            {
                Console.WriteLine(" => " + root.getResult() + "\n");
            }
            else
            {
                foreach (KeyValuePair <DTNode, Condition> entry in root.getChildren())
                {
                    // do something with entry.Value or entry.Key
                    Console.Write(entry.Value.getMember1() + " ");
                    switch (entry.Value.getOperator())
                    {
                    case Constants.conditionType.LT:
                        Console.Write(" < "); break;

                    case Constants.conditionType.GEQT:
                        Console.Write(" >= "); break;

                    default: break;
                    }
                    Console.Write(entry.Value.getMember2() + "\n");
                    printTree(entry.Key);
                }
            }
        }
Exemplo n.º 2
0
 public static String findValueInTree(DTNode root, Example test)
 {
     if (root.getChildren().Count > 0)
     {
         double value;
         // foreach child
         foreach (KeyValuePair<DTNode, Condition> entry in root.getChildren())
         {
             switch (entry.Value.getOperator())
             {
                 case Constants.conditionType.GEQT:
                     if (test.getAttributes().TryGetValue(entry.Value.getMember1(), out value) == true)
                     {
                         if (value >= entry.Value.getMember2())
                             return findValueInTree(entry.Key, test);
                     }
                     break;
                 case Constants.conditionType.LT:
                     if (test.getAttributes().TryGetValue(entry.Value.getMember1(), out value) == true)
                     {
                         if (value < entry.Value.getMember2())
                             return findValueInTree(entry.Key, test);
                     }
                     break;
                 default:
                     break;
             }
         }
     }
     return root.getResult();
 }
Exemplo n.º 3
0
 public static void printTree(DTNode root)
 {
     if (root.getChildren().Count == 0)
         Console.WriteLine(" => " + root.getResult() + "\n");
     else
     {
         foreach (KeyValuePair<DTNode, Condition> entry in root.getChildren())
         {
             // do something with entry.Value or entry.Key
             Console.Write(entry.Value.getMember1() + " ");
             switch (entry.Value.getOperator())
             {
                 case Constants.conditionType.LT:
                     Console.Write(" < "); break;
                 case Constants.conditionType.GEQT:
                     Console.Write(" >= "); break;
                 default: break;
             }
             Console.Write(entry.Value.getMember2() + "\n");
             printTree(entry.Key);
         }
     }
 }
Exemplo n.º 4
0
        public static String findValueInTree(DTNode root, Example test)
        {
            if (root.getChildren().Count > 0)
            {
                double value;
                // foreach child
                foreach (KeyValuePair <DTNode, Condition> entry in root.getChildren())
                {
                    switch (entry.Value.getOperator())
                    {
                    case Constants.conditionType.GEQT:
                        if (test.getAttributes().TryGetValue(entry.Value.getMember1(), out value) == true)
                        {
                            if (value >= entry.Value.getMember2())
                            {
                                return(findValueInTree(entry.Key, test));
                            }
                        }
                        break;

                    case Constants.conditionType.LT:
                        if (test.getAttributes().TryGetValue(entry.Value.getMember1(), out value) == true)
                        {
                            if (value < entry.Value.getMember2())
                            {
                                return(findValueInTree(entry.Key, test));
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            return(root.getResult());
        }