예제 #1
0
파일: Program.cs 프로젝트: Allemel/123
        static void Main(string[] args)
        {
            try
            {
                Technic one     = new Technic(10, 2, 5.4, "One", Technic.Type.Computer);
                Technic two     = new Technic(44, 1, 10, "Two", Technic.Type.Printer);
                Technic three   = new Technic(100, 33, 12.3, "Three", Technic.Type.Lamp);
                Technic four    = new Technic(444, 12, 10.2, "Four", Technic.Type.Computer);
                Technic five    = new Technic(1, 1, 1665, "Five", Technic.Type.Xerox);
                Technic six     = new Technic(4, 1, 134, "Six", Technic.Type.Computer);
                Technic seven   = new Technic(54, 100, 16.3, "Seven", Technic.Type.Printer);
                Technic eight   = new Technic(12, 100, 10.88, "Eight", Technic.Type.Lamp);
                Technic nine    = new Technic(2, 111, 14.88, "Nine", Technic.Type.Xerox);
                Technic ten     = new Technic(5, 14, 11.1, "Ten", Technic.Type.Scaner);
                Technic eleven  = new Technic(6, 13, 190, "Eleven", Technic.Type.XRay);
                Technic twelve  = new Technic(9, 12, 189, "Twelve", Technic.Type.Printer);
                Technic twelv1e = new Technic(9, 14, 15, "Fourteen", Technic.Type.Printer);

                Laboratory lab = new Laboratory();
                lab.Add(one);
                lab.Add(two);
                lab.Add(three);
                lab.Add(four);
                lab.Add(five);
                lab.Add(six);
                lab.Add(seven);
                lab.Add(eight);
                lab.Add(nine);
                lab.Add(ten);
                lab.Add(eleven);
                lab.Add(twelve);


                Console.WriteLine("Count expired: " + lab.CountExp(12));

                int[] res = lab.TypeCount();
                Console.WriteLine("Type count:");

                Console.WriteLine("Computer: " + res[0]);
                Console.WriteLine("Printer: " + res[1]);
                Console.WriteLine("Scaner: " + res[2]);
                Console.WriteLine("Xerox: " + res[3]);
                Console.WriteLine("Lamp: " + res[4]);
                Console.WriteLine("XRay: " + res[5]);

                Console.WriteLine("Ordered list by price:");
                var list = lab.GetOrdered();

                foreach (var item in list)
                {
                    Console.WriteLine(item.ToString());
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("EXCEPTION! " + ex);
            }
            finally
            {
            }
        }
예제 #2
0
        static void Main(string[] args)
        {
            PrintDevice printObj = new PrintDevice("Canon", 5, "Устройство PIXMA MG2540S «Все в одном» для ежедневной печати, сканирования и копирования.", 760, "Китай");
            Skaner      skanObj  = new Skaner("Canon CanoScan", 4, "Легкий и компактный планшетный сканер формата A4 со стильным дизайном Canon CanoScan LiDE 300.", 550, "Китай");
            Computer    compObj  = new Computer("Asus Zenbook", 10, "Креативность, стиль, инновационность – эти качества воплощает новый ZenBook 14.", "AMD Ryzen 5", 1500, "Ультрабук");
            Tablet      tablObj  = new Tablet("Lenovo M10 Plus", 6, "-", 10.3, 990, "Tab M10 (Lenovo)");

            PrintDevice newPrintObj = new PrintDevice("Canon", 7, "Устройство PIXMA MG2540S «Все в одном» для ежедневной печати, сканирования и копирования.", 1030, "Китай");
            Skaner      newSkanObj  = new Skaner("Canon CanoScan", 6, "Легкий и компактный планшетный сканер формата A4 со стильным дизайном Canon CanoScan LiDE 300.", 660, "Китай");
            Computer    newCompObj  = new Computer("Asus Zenbook", 12, "Креативность, стиль, инновационность – эти качества воплощает новый ZenBook 14.", "AMD Ryzen 4", 1500, "Ультрабук");
            Tablet      newTablObj  = new Tablet("Legion", 8, "-", 14.2, 780, "Tab M10");

            Laboratory.Add(printObj);
            Laboratory.Add(skanObj);
            Laboratory.Add(compObj);
            Laboratory.Add(tablObj);
            Laboratory.Add(newPrintObj);
            Laboratory.Add(newSkanObj);
            Laboratory.Add(newCompObj);
            Laboratory.Add(newTablObj);


            compObj.Available();
            skanObj.Available();
            printObj.priceIncrease();

            Console.WriteLine(new string('=', 35));
            Console.WriteLine("Информация о имеющемся планшете: ");
            Console.WriteLine(tablObj.ToString());

            Console.WriteLine(new string('=', 35));
            Product prodObj = new Computer("Lenovo IdeaPad L3", 3, "Встречайте 15,6-дюймовый ноутбук Lenovo IdeaPad 3. Оснащенный передовым процессором Intel® Core™ 10-го поколения и дискретной видеокартой.", "Intel Core i3", 2200, "Универсальный");

            Laboratory.Add(prodObj);
            Console.WriteLine("Информация о новом товаре:");
            Console.WriteLine(prodObj.ToString());

            Console.WriteLine(new string('=', 35));
            Console.WriteLine(prodObj is Product ? "Объект prodObj является элементом класса Product" : "Объект prodObj не является элементом класса Product");
            Console.WriteLine(compObj is Device ? "Объект compObj является элементом класса Device" : "Объект compObj не является элементом класса Device");
            Console.WriteLine(tablObj is Skaner ? "Объект tablObj является элементом класса Device" : "Объект tablObj не является элементом класса Device");

            Console.WriteLine(new string('=', 35));
            var secProd = prodObj as Computer;

            if (secProd != null)
            {
                Console.WriteLine(secProd.ToString());
            }

            Console.WriteLine(new string('=', 35));
            compObj.Producer();
            compObj.GetDiscounts();
            tablObj.InfoAboutDiscounts();

            Console.WriteLine(new string('=', 35));
            Console.WriteLine("Вызываем класс IPrinter и метод IAmPrinting(): ");
            IPrinter printing = new IPrinter();

            Product[] ArrayTech = new Product[] { printObj, skanObj, tablObj };
            foreach (var tech in ArrayTech)
            {
                printing.IAmPrinting(tech);
                Console.ReadKey();
            }

            Console.WriteLine();
            Console.WriteLine(new string('=', 45));
            Console.WriteLine("============ Лабораторная №6 ============");
            Console.WriteLine(new string('=', 45));

            Laboratory.ShowList();
            Console.WriteLine("=== Поиск техники старше заданного срока службы ===");
            Controller.FindOldest(Laboratory.Equipment);
            Console.WriteLine(new string('=', 35));

            Console.WriteLine("=== Задание 1: Подсчитать количество каждого вида техники. ===");
            Controller.TechCounter(Laboratory.Equipment);
            Console.WriteLine(new string('=', 35));

            Console.WriteLine("=== Задание 2: Вывести список техники в порядке убывания цены. ===");
            Controller.PriceToMin(Laboratory.Equipment);
            Laboratory.ShowList();
            Console.WriteLine(new string('=', 35));

            Console.WriteLine();
            Console.WriteLine("Добавление нового объекта путём чтения данных из текстового файла: ");
            Product compObjFromFile = (Controller.ReadFromFile(Laboratory.Equipment));

            Console.WriteLine(compObjFromFile.ToString());
        }