Tohir5258

LINQ_02

Nov 18th, 2025 (edited)
319
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.83 KB | None | 0 0
  1. using System;
  2.  
  3. namespace LINQ_02
  4. {
  5.     internal class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             Prison prison = new Prison();
  10.  
  11.             prison.ShowPrisoners();
  12.             Console.WriteLine();
  13.            
  14.             prison.ApplyAmnesty("Антиправительственное");
  15.             Console.WriteLine();
  16.            
  17.             prison.ShowPrisoners();
  18.         }
  19.     }
  20.  
  21.     public class Prisoner
  22.     {
  23.         public Prisoner(string lastName, string firstName, string parentName, string crime)
  24.         {
  25.             LastName = lastName;
  26.             FirstName = firstName;
  27.             ParentName = parentName;
  28.             Crime = crime;
  29.         }
  30.  
  31.         public string LastName { get; }
  32.         public string FirstName { get; }
  33.         public string ParentName { get; }
  34.         public string Crime { get; }
  35.  
  36.         public override string ToString()
  37.         {
  38.             return $"ФИО: {LastName} {FirstName} {ParentName}, Преступление: {Crime})";
  39.         }
  40.     }
  41.  
  42.     class Prison
  43.     {
  44.         private List<Prisoner> _prisoners = new List<Prisoner>()
  45.         {
  46.             new Prisoner("Петров", "Петр", "Петрович", "Убийство"),
  47.             new Prisoner("Сидоров", "Алексей", "Сергеевич", "Антиправительственное"),
  48.             new Prisoner("Смирнов", "Дмитрий", "Олегович", "Грабеж"),
  49.             new Prisoner("Кузнецов", "Максим", "Владимирович", "Хулиганство"),
  50.             new Prisoner("Попов", "Сергей", "Андреевич", "Воровство"),
  51.             new Prisoner("Васильев", "Антон", "Павлович", "Разбой"),
  52.             new Prisoner("Михайлов", "Олег", "Николаевич", "Финансовые махинации"),
  53.             new Prisoner("Федоров", "Николай", "Дмитриевич", "Угон автомобиля"),
  54.             new Prisoner("Соколов", "Егор", "Михайлович", "Нанесение тяжких телесных"),
  55.             new Prisoner("Новиков", "Андрей", "Игоревич", "Антиправительственное"),
  56.             new Prisoner("Морозов", "Владимир", "Викторович", "Убийство по неосторожности"),
  57.             new Prisoner("Волков", "Александр", "Юрьевич", "Антиправительственное"),
  58.             new Prisoner("Лебедев", "Константин", "Александрович", "Воровство"),
  59.             new Prisoner("Семенов", "Павел", "Иванович", "Клевета"),
  60.             new Prisoner("Голубев", "Артем", "Сергеевич", "Антиправительственное"),
  61.             new Prisoner("Виноградов", "Роман", "Евгеньевич", "Сбыт наркотиков"),
  62.             new Prisoner("Богданов", "Илья", "Валерьевич", "Грабеж"),
  63.             new Prisoner("Воробьев", "Максим", "Петрович", "Вандализм"),
  64.             new Prisoner("Козлов", "Олег", "Анатольевич", "Контрабанда"),
  65.             new Prisoner("Зайцев", "Игорь", "Степанович", "Антиправительственное")
  66.         };
  67.        
  68.         public void ShowPrisoners()
  69.         {
  70.             foreach (var item in _prisoners)
  71.             {
  72.                 Console.WriteLine(item);
  73.             }
  74.         }
  75.  
  76.         public void ApplyAmnesty(string crime)
  77.         {
  78.             _prisoners = _prisoners.Where(prisoner => string.Equals(prisoner.Crime, crime, StringComparison.OrdinalIgnoreCase) == false).ToList();
  79.         }
  80.     }
  81. }
  82.  
Tags: LINQ_02
Advertisement
Add Comment
Please, Sign In to add comment