Технологии

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace guidrumshop { class Shop { protected string Name { get; - вопрос №4524393

set; } protected double Price { get; set; } public Shop(string name, double price) { Name = name; Price = price; } } class Guitars: Shop { public string special { get; set; } public Guitars(string name, double price, string special): base (name, price) { this.special = special; } public void Oper() { Console.WriteLine(«НАЗВАНИЕ » + Name + "||| ЦЕНА: " + Price + "||| ОСОБЕННОСТИ:"+special); } } class Drums: Shop { public Drums(string name, double price): base(name, price) { } public void OneMoreOper() { Console.WriteLine(«НАЗВАНИЕ » + Name + "||| ЦЕНА: " + Price); } } class Program { static void Main(string[] args) { List<Shop> shops = new List<Shop>(); shops.Add(new Guitars(«YAMAHA FSX315CTBS», 23990, «6-ти струнная, имеет бустер средних частот и качественный точный тюнер.» )); shops.Add(new Guitars(«FENDER CD-60 DREAD V3 DS», 16190, «6-ти струнная, John Petrucci Signature, черная.»)); shops.Add(new Guitars(«IBANEZ GRX20-BKN», 20390,«6-ти струнная электрогитара, черная.»)); shops.Add(new Guitars(«GIBSON 2019 LES PAUL TRIBUTE», 137990,«6-ти струнная электрогитара, цвет вишневый санберст.»)); shops.Add(new Guitars(«FENDER AMERICAN PERFORMER STRATOCASTER», 154990,«6-ти струнная электрогитара, желтая модель, 22 лада.»)); shops.Add(new Drums(«Pearl RS525SC/C31», 49990)); foreach (Shop shop in shops) { if (shop is Guitars) ((Guitars)shop).Oper(); else ((Drums)shop).OneMoreOper(); } Console.ReadKey(); } Программку надо исправить: 1) свойство на цену должно быть не автоматическим, а обычным, а в нем должно быть условие на цену (она не должна быть меньше нуля). либо можете оставить свойство, но в конструкторе прописать условие 2) в основной программе использовали только оператор is, нужно еще вместо явного преобразования использовать оператор as

ноябрь 4, 2021 г.

  • Всего ответов: 0

Похожие вопросы