static void Main(string[] args) { BinaryFunctions tree = new BinaryFunctions(); int sumdepth = 0; int numberOfNodes = 0; double minLevel = 0; Console.WriteLine("Enter a collection of numbers in the range [0,100], seperated by spaces:\n"); string line = Console.ReadLine(); string[] line_parsed = line.Split(new char[] {' '}); for (int i = 0; i < line_parsed.Length; i++) tree.insert(tree.root, int.Parse(line_parsed[i])); Console.Write("Tree Contents: "); tree.inOrderTraversal(tree.root); numberOfNodes = tree.returnNodes(); sumdepth = tree.countLevels(tree.root); minLevel = Math.Log(numberOfNodes, 2.0); Console.WriteLine(); Console.WriteLine("Tree Statistics:"); Console.WriteLine(" Number of nodes: " + numberOfNodes); Console.WriteLine(" Number of levels: " + sumdepth); Console.WriteLine(" Minumum number of levels that a tree with " + numberOfNodes + " nodes could have = " + Math.Ceiling(minLevel)); Console.WriteLine("Done!"); }