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 { } }
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()); }