예제 #1
0
        static void Main(string[] args)
        {
            int            n        = int.Parse(Console.ReadLine());
            string         input    = string.Empty;
            string         name     = string.Empty;
            string         price    = string.Empty;
            string         producer = string.Empty;
            ShoppingCenter center   = new ShoppingCenter();

            for (int line = 0; line < n; line++)
            {
                input = Console.ReadLine();
                List <string> arguments = input.Split(' ').ToList();
                string        command   = arguments[0];
                arguments.RemoveAt(0);
                string data = string.Join(" ", arguments);


                switch (command)
                {
                case "AddProduct":
                    string[] argsToPass = data.Split(';');
                    center.Add(argsToPass[0], argsToPass[1], argsToPass[2]);
                    break;

                case "FindProductsByName":
                    center.FindProductsByName(data);
                    break;

                case "FindProductsByProducer":
                    center.FindProductsByProducer(data);
                    break;

                case "DeleteProducts":
                    argsToPass = data.Split(';');
                    if (argsToPass.Length == 1)
                    {
                        center.DeleteProducts(argsToPass[0]);
                    }
                    else
                    {
                        center.DeleteProducts(argsToPass[0], argsToPass[1]);
                    }
                    break;

                case "FindProductsByPriceRange":
                    argsToPass = data.Split(';');
                    center.FindProductsByPriceRange(argsToPass[0], argsToPass[1]);
                    break;
                }
            }

            Console.ReadLine();
        }
        public static void Main()
        {
            var center = new ShoppingCenter();
            int n      = int.Parse(Console.ReadLine());

            var result = new StringBuilder();

            for (int i = 0; i < n; i++)
            {
                var line        = Console.ReadLine().Split(' ').ToList();
                var commandName = line[0];

                line.RemoveAt(0);
                var args = string.Join(" ", line).Split(';');

                if (commandName == "AddProduct")
                {
                    result.AppendLine(center.Add(args[0], decimal.Parse(args[1]), args[2]));
                }
                else if (commandName == "DeleteProducts")
                {
                    if (args.Length == 2)
                    {
                        result.AppendLine(center.DeleteProducts(args[0], args[1]));
                    }
                    else
                    {
                        result.AppendLine(center.DeleteProducts(args[0]));
                    }
                }
                else if (commandName == "FindProductsByName")
                {
                    result.AppendLine(center.FindProductsByName(args[0]));
                }
                else if (commandName == "FindProductsByPriceRange")
                {
                    result.AppendLine(center.FindProductsByPriceRange(decimal.Parse(args[0]), decimal.Parse(args[1])));
                }
                else if (commandName == "FindProductsByProducer")
                {
                    result.AppendLine(center.FindProductsByProducer(args[0]));
                }
            }

            Console.WriteLine(result.ToString().Trim());
        }
예제 #3
0
        public static void Main()
        {
            ShoppingCenter shoppingCenter = new ShoppingCenter();

            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                string   line      = Console.ReadLine();
                int      index     = line.IndexOf(' ');
                string   command   = line.Substring(0, index);
                string[] arguments = line.Substring(index + 1).Split(';');

                switch (command)
                {
                case "AddProduct":
                {
                    Product product = new Product(arguments[0], arguments[2], double.Parse(arguments[1]));
                    shoppingCenter.Add(product);
                    Console.WriteLine("Product added");
                }
                break;

                case "DeleteProducts":
                {
                    int count = arguments.Length == 1
                                ? shoppingCenter.DeleteByProducer(arguments[0])
                                : shoppingCenter.DeleteByNameAndProducer(arguments[0], arguments[1]);

                    if (count == 0)
                    {
                        Console.WriteLine("No products found");
                    }
                    else
                    {
                        Console.WriteLine($"{count} products deleted");
                    }
                }
                break;

                case "FindProductsByName":
                {
                    var products = shoppingCenter.FindByName(arguments[0]);
                    PrintProducts(products);
                }
                break;

                case "FindProductsByProducer":
                {
                    var products = shoppingCenter.FindByProducer(arguments[0]);
                    PrintProducts(products);
                }
                break;

                case "FindProductsByPriceRange":
                {
                    double from     = double.Parse(arguments[0]);
                    double to       = double.Parse(arguments[1]);
                    var    products = shoppingCenter.FindByPriceRange(from, to);
                    PrintProducts(products);
                }
                break;
                }
            }
        }