lovelyvook

Unit_51

Aug 17th, 2024 (edited)
363
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.33 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace Ijunior
  6. {
  7.     internal class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             Amnesty amnesty = new Amnesty();
  12.             amnesty.Work();
  13.         }
  14.     }
  15.  
  16.     class Amnesty
  17.     {
  18.         private Database _database = new Database();
  19.  
  20.         public void Work()
  21.         {
  22.             string filterCrime = "антиправительственное";
  23.  
  24.             _database.ShowInfo();
  25.             _database.RemoveCriminals(filterCrime);
  26.             Console.WriteLine($"\n\nВсе заключенные с преступлением {filterCrime} были отпущены\n\n");
  27.             _database.ShowInfo();
  28.         }
  29.     }
  30.  
  31.     class Database
  32.     {
  33.         private List<Prisoner> _prisoners;
  34.  
  35.         public Database()
  36.         {
  37.             _prisoners = new List<Prisoner>();
  38.             AddPrisoners();
  39.         }
  40.  
  41.         public void ShowInfo()
  42.         {
  43.             foreach (Prisoner prisoner in _prisoners)
  44.             {
  45.                 Console.WriteLine($"{prisoner.Name} - преступление {prisoner.Crime}");
  46.             }
  47.         }
  48.  
  49.         public void RemoveCriminals(string filterCrime)
  50.         {
  51.             var filteredPrisoners = _prisoners.Where(prisoner => prisoner.Crime != filterCrime).ToList();
  52.             _prisoners = filteredPrisoners;
  53.         }
  54.  
  55.         private void AddPrisoners()
  56.         {
  57.             _prisoners.Add(new Prisoner("Иванов Сергей Александрович", "антиправительственное"));
  58.             _prisoners.Add(new Prisoner("Смирнова Екатерина Викторовна", "воровство"));
  59.             _prisoners.Add(new Prisoner("Петрова Анна Дмитриевна", "антиправительственное"));
  60.             _prisoners.Add(new Prisoner("Гогия Леван Нодарович", "воровство"));
  61.             _prisoners.Add(new Prisoner("Циклаури Нино Вахтанговна", "мошенничество"));
  62.         }
  63.     }
  64.  
  65.     class Prisoner
  66.     {
  67.         public Prisoner(string name, string crime)
  68.         {
  69.             Name = name;
  70.             Crime = crime;
  71.         }
  72.  
  73.         public string Name { get; }
  74.         public string Crime { get; }
  75.     }
  76. }
Advertisement
Add Comment
Please, Sign In to add comment