static void Main(string[] args) { string[] pizzaInput = Console.ReadLine().Split(); string pizzaName = pizzaInput[1]; if (pizzaName.Length < 1 || pizzaName.Length > 15) { Console.WriteLine("Pizza name should be between 1 and 15 symbols."); return; } Pizza pizza = null; while (true) { string[] input = Console.ReadLine().Split(); if (input[0] == "END") { break; } string item = input[0]; if (item == "Dough") { string flourType = input[1]; string bakingTechnique = input[2]; int weight = int.Parse(input[3]); Dough dough = new Dough(flourType, bakingTechnique, weight); pizza = new Pizza(pizzaName, dough); } else if (item == "Topping") { string toppingType = input[1]; int weight = int.Parse(input[2]); Toppings toppings = new Toppings(toppingType, weight); pizza.Toppings.Add(toppings); if (pizza.Toppings.Count == 10) { Console.WriteLine($"Number of toppings should be in range [0..10]."); return; } } } Console.WriteLine($"{pizza.Name} - {pizza.Calories + pizza.Dough.Calories :f2} Calories."); }
static void Main(string[] args) { try { var pizzaInput = Console.ReadLine().Split(); var pizzaName = pizzaInput[1]; var doughInput = Console.ReadLine().Split(); var flourType = doughInput[1].ToLower(); var bakingTechnique = doughInput[2].ToLower(); var doughWeight = double.Parse(doughInput[3]); var dough = new Dough(flourType, bakingTechnique, doughWeight); var pizza = new Pizza(pizzaName, dough); while (true) { var toppingInput = Console.ReadLine().Split(); if (toppingInput[0] == "END") { break; } var toppingType = toppingInput[1]; var toppingWeight = double.Parse(toppingInput[2]); var topping = new Toppings(toppingType, toppingWeight); pizza.AddTopping(topping); } Console.WriteLine(pizza); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
public static void Main(string[] args) { string[] currentPizza = Console.ReadLine().Split(new char[] { ' ' }); string[] currentDough = Console.ReadLine().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string flourType = currentDough[1]; string bakingTechnique = currentDough[2]; double weight = double.Parse(currentDough[3]); List <Dough> thisDough = new List <Dough>(); List <Pizza> pizzaList = new List <Pizza>(); try { Dough dough = new Dough(flourType, bakingTechnique, weight); thisDough.Add(dough); } catch (Exception ex) { Console.WriteLine(ex.Message); Environment.Exit(0); } try { Pizza pizza = new Pizza(currentPizza[1], thisDough[0]); pizzaList.Add(pizza); } catch (Exception ex) { Console.WriteLine(ex.Message); Environment.Exit(0); } string command = Console.ReadLine(); while (command != "END") { string[] toppings = command.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string toppingType = toppings[1]; try { Toppings topping = new Toppings(toppingType, double.Parse(toppings[2])); pizzaList[0].AddTopping(topping); } catch (Exception ex) { Console.WriteLine(ex.Message); Environment.Exit(0); } command = Console.ReadLine(); } double toppingCalories = 0; foreach (var item in pizzaList[0].Toppings) { toppingCalories += double.Parse(item.CalculateCalories()); } Console.WriteLine($"{pizzaList[0].Name} - {pizzaList[0].CalculateCalories(pizzaList[0].Dough, toppingCalories):f2} Calories."); }
static void Main(string[] args) { Dough dough = new Dough(); string pizzaName = "default"; Pizza pizza = new Pizza(pizzaName, dough, new List <Toppings>()); string[] input = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); if (input[0].ToLower() == "pizza" && input.Length >= 3) { for (int i = 2; i < input.Length; i++) { input[1] += " " + input[i]; } } try { while (input[0] != "END") { switch (input[0].ToLower()) { case "dough": dough = new Dough(input[1], input[2], double.Parse(input[3])); pizza.AddDough(dough); break; case "topping": Toppings topping = new Toppings(input[1], double.Parse(input[2])); pizza.AddTopping(topping); break; case "pizza": try { pizzaName = input[1]; pizza.Name = pizzaName; } catch (IndexOutOfRangeException) { pizzaName = " "; } break; } input = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); } if (pizza.Name == "default") { Console.WriteLine("Pizza name should be between 1 and 15 symbols."); Environment.Exit(0); } else { Console.WriteLine($"{pizza.Name} - {pizza.TotalCalories(pizza.Dough, pizza.Toppings):F2} Calories."); } } catch (ArgumentException err) { Console.WriteLine(err.Message); } }