/*Создайте класс «Car» который позволяет рассчитать стоимость автомобиля * (с базовой стоимостью 309000)в зависимости от выбранной комплектации * (ABS-8390, противотуманные фары - 2960, парктроник 3500), * если выбраны все опции -действует скидка в 5% от стоимости автомобиля. */ using System; namespace restless { class Car { private float _price; private bool _haveABS, _haveLight, _haveParkAssist; public Car() { _price = 309000; _haveABS = false; _haveLight = false; _haveParkAssist = false; } public void printPrice() { if (_haveABS == true && _haveLight == true && _haveParkAssist == true) Console.WriteLine($"Вам предоставляется скидка в 5% за покупку всех доп. опций, стоимость авто с учётом скидки: {_price * 1.05}"); else Console.WriteLine($"Текущая стоимость авто {_price}"); } public void setABS() { if (_haveABS == false) { _haveABS = true; _price += 8390; Console.WriteLine("Опция успешно добавлена!"); } else { Console.WriteLine("Данная опция уже была добавлена!"); } } public void setLigth() { if (_haveLight == false) { _haveLight = true; _price += 2960; Console.WriteLine("Опция успешно добавлена!"); } else { Console.WriteLine("Данная опция уже была добавлена!"); } } public void setParkAssist() { if (_haveParkAssist == false) { _haveParkAssist = true; _price += 3500; Console.WriteLine("Опция успешно добавлена!"); } else { Console.WriteLine("Данная опция уже была добавлена!"); } } public void addNewOptions() { string mchoice; Console.WriteLine("Какую опцию вы хотите добавить?\n1.ABS\n2.Противотуманные фары\n3.Парктроник"); mchoice = Console.ReadLine(); switch (mchoice) { case "1": setABS(); break; case "2": setLigth(); break; case "3": setParkAssist(); break; default: Console.WriteLine("Невернно введен номер опции"); break; } } } class Program { static void Main(string[] args) { int choice; Car vesta = new Car(); do { Console.WriteLine("\n\t\tМеню\n1.Показать текущую стоимость авто\n2.Добавить опцию\n0.Выход"); choice = Convert.ToInt32(Console.ReadLine()); switch (choice) { case 1: vesta.printPrice(); break; case 2: vesta.addNewOptions(); break; case 0: Console.WriteLine("Программа завершена."); break; default: Console.WriteLine("Неверно введен пункт меню"); break; } } while (choice != 0); } } }