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)); }
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(); }