public Nodo Agregar(int valor)
 {
     if (valor < Dato)
     {
         Izquierdo = Izquierdo?.Agregar(valor) ?? new Nodo(valor);
     }
     else
     {
         Derecho = Derecho?.Agregar(valor) ?? new Nodo(valor);
     }
     return(this);
 }
        public override int Evaluar()
        {
            switch (Valor)
            {
            case "+":
                return(Izquierdo.Evaluar() + Derecho.Evaluar());

            case "*":
                return(Izquierdo.Evaluar() * Derecho.Evaluar());
            }

            return(Int32.Parse(Valor));
        }
Beispiel #3
0
        public override int Resultado()
        {
            switch (Valor)
            {
            case "+":
                return(Izquierdo.Resultado() + Derecho.Resultado());

            case "*":
                return(Izquierdo.Resultado() * Derecho.Resultado());
            }

            return(Int32.Parse(Valor));
        }
 public void Recorrer()
 {
     Izquierdo?.Recorrer();
     Console.WriteLine($" - {Dato}");
     Derecho?.Recorrer();
 }