static void Main(string[] args) { Console.WriteLine("Enter q to quit!"); var zoo = new Zoo(); while (true) { Console.WriteLine(); Console.WriteLine("Enter Animal Type: "); Console.WriteLine("1. Lion"); Console.WriteLine("2. Tiger"); Console.WriteLine("3. Zebra"); Console.Write("Type (number): "); var type = Console.ReadLine(); if (type == "q") { break; } Animal animal = null; switch (type) { case "1": animal = new Lion(); break; case "2": animal = new Tiger(); break; case "3": animal = new Zebra(); break; default: Console.WriteLine("Not a valid animal type!"); break; } if (animal != null) { Console.WriteLine(); Console.WriteLine($"Feed the : {animal.Type()}."); animal.WrongFoodProvided += OnWrongFoodProvided; FeedAnimal(animal); zoo.AddAnimal(animal); } } Console.WriteLine($"Total Expenses for all animals: {zoo.TotalExpenses()}"); var mostExpensive = zoo.MostExpensive(); Console.WriteLine($"Most expensive animal to keep is: {mostExpensive.Type()}"); Console.WriteLine($"It eats: {zoo.CostByAnimal(mostExpensive)}"); }