Advertisement
Serby__

Untitled

Dec 7th, 2021
923
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.34 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3.  
  4. namespace ConsoleApp9
  5. {
  6.  
  7.     abstract class Tovar //абстрактный класс
  8.     {
  9.         abstract public void Show(); // абстрактный метод для вывода
  10.  
  11.         abstract public void Check(int n); // абстрактный метод для проверки категории
  12.     }
  13.  
  14.     class Toy : Tovar
  15.     {
  16.         string name, proizvoditel, material;
  17.         double cena;
  18.         int vozrast;
  19.  
  20.         public Toy(string name, double cena, string proizvoditel, string material, int vozrast)
  21.         {
  22.             this.name = name;
  23.             this.cena = cena;
  24.             this.proizvoditel = proizvoditel;
  25.             this.material = material;
  26.             this.vozrast = vozrast;
  27.         }
  28.  
  29.         public override void Check(int n)
  30.         {
  31.             if (n < vozrast)
  32.             {
  33.                 Console.WriteLine("Товар " + name + "не подходит возрастной категории");
  34.             }
  35.             else
  36.             {
  37.                 Console.WriteLine("Товар " + name + " подходит для введеннного возраста");
  38.             }
  39.         }
  40.  
  41.         public override void Show()
  42.         {
  43.             Console.WriteLine("Название продукта - " + name + " цена - " + cena + " производитель - " + proizvoditel + " материал - " + material + " возрастная категория - " + vozrast);
  44.         }
  45.  
  46.     }
  47.  
  48.     class Book : Tovar
  49.     {
  50.         string name, avtor, izdatelstvo;
  51.         double cena;
  52.         int vozrast, god;
  53.  
  54.         public Book(string name, string avtor, double cena,  string izdatelstvo, int god, int vozrast)
  55.         {
  56.             this.name = name;
  57.             this.avtor = avtor;
  58.             this.cena = cena;
  59.             this.izdatelstvo = izdatelstvo;
  60.             this.god = god;
  61.             this.vozrast = vozrast;
  62.         }
  63.  
  64.         public override void Check(int n)
  65.         {
  66.             if (n < vozrast)
  67.             {
  68.                 Console.WriteLine("Товар "+name+ "не подходит возрастной категории");
  69.             }
  70.             else
  71.             {
  72.                 Console.WriteLine("Товар " + name + " подходит для введеннного возраста");
  73.             }
  74.         }
  75.  
  76.         public override void Show()
  77.         {
  78.             Console.WriteLine("Название продукта - " + name + " автор - " + avtor + " цена - " + cena + " издательство - " + izdatelstvo + " возрастная категория - " + vozrast);
  79.        
  80.         }
  81.     }
  82.  
  83.  
  84.     class Sport : Tovar
  85.     {
  86.         string name, proizvoditel;
  87.         double cena;
  88.         int vozrast;
  89.  
  90.         public Sport(string name, double cena, string proizvoditel, int vozrast)
  91.         {
  92.             this.name = name;
  93.             this.cena = cena;
  94.             this.proizvoditel = proizvoditel;
  95.             this.vozrast = vozrast;
  96.         }
  97.  
  98.         public override void Check(int n)
  99.         {
  100.             if (n < vozrast)
  101.             {
  102.                 Console.WriteLine("Товар " + name + "не подходит возрастной категории");
  103.             }
  104.             else
  105.             {
  106.                 Console.WriteLine("Товар " + name + "подходит для введеннного возраста");
  107.             }
  108.         }
  109.  
  110.         public override void Show()
  111.         {
  112.             Console.WriteLine("Название продукта - " + name + " цена - " + cena + " производитель - " + proizvoditel +  " возрастная категория - " + vozrast);
  113.         }
  114.     }
  115.     class Program
  116.     {
  117.         static void Main(string[] args)
  118.         {
  119.  
  120.             using (StreamReader fileIn = new StreamReader("file1.txt"))
  121.             {
  122.                 using (StreamWriter fileOut = new StreamWriter("file2.txt"))
  123.                 {
  124.                     int n = int.Parse(fileIn.ReadLine());
  125.                     Tovar[] a = new Tovar[n];
  126.                     for (int i = 0; i < n; ++i)
  127.                     {
  128.  
  129.                         string[] line = fileIn.ReadLine().Split();
  130.  
  131.                         if (line.Length == 4)
  132.                         {
  133.                             a[i] = new Sport(line[0], int.Parse(line[1]), line[2], int.Parse(line[3]));
  134.                         }
  135.                         else if (line.Length == 5)
  136.                         {
  137.                             a[i] = new Toy(line[0], int.Parse(line[1]), line[2], line[3], int.Parse(line[4]));
  138.                         }
  139.                         else
  140.                         {
  141.                             a[i] = new Book(line[0], line[1], int.Parse(line[2]), line[3], int.Parse(line[4]), int.Parse(line[5]));
  142.                         }
  143.                     }
  144.  
  145.                     foreach (var x in a)
  146.                     {
  147.                         x.Show();
  148.                     }
  149.  
  150.                     Console.WriteLine("Поиск.Введите возрастное ограничение товара: ");
  151.                     int k = int.Parse(Console.ReadLine());
  152.                     foreach (var x in a)
  153.                     {
  154.                         x.Check(k);
  155.                     }
  156.                 }      
  157.         }   }
  158.     }
  159. }
  160.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement