Advertisement
Vlad_Savitskiy

Amnesty

Jun 30th, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.27 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3.  
  4. namespace CSLightFirst
  5. {
  6.     class Program
  7.     {
  8.         private static void Main()
  9.         {
  10.             List<Criminal> criminals = GenerateCriminals();
  11.  
  12.             while (true)
  13.             {
  14.                 Console.WriteLine("Выберите, что Вам нужно сделать:\n" +
  15.                                   "  1 - Освободить заключенных за \"Антиправительственное\" преступление\n" +
  16.                                   "  2 - Показать всех заключенных\n");
  17.                 Console.Write("Ваш ответ: ");
  18.  
  19.                 switch (Console.ReadLine())
  20.                 {
  21.                     case "1":
  22.                         MakeCrimeSelection(criminals);
  23.                         break;
  24.                     case "2":
  25.                         ShowCriminals(criminals);
  26.                         break;
  27.                     default:
  28.                         Console.WriteLine("Некорректное введенное значение, попробуйте ещё раз...");
  29.                         break;
  30.                 }
  31.             }
  32.         }
  33.  
  34.         private static void MakeCrimeSelection(List<Criminal> criminals)
  35.         {
  36.             int count = criminals.RemoveAll(criminal => criminal.Crime == "Антиправительственное");
  37.  
  38.             Console.Clear();
  39.             Console.WriteLine($"Было удалено {count} досье.\n");
  40.         }
  41.  
  42.         private static void ShowCriminals(IEnumerable<Criminal> criminals)
  43.         {
  44.             Console.WriteLine("Полный список заключенных:\n");
  45.  
  46.             foreach (Criminal criminal in criminals)
  47.                 criminal.ShowInfo();
  48.         }
  49.  
  50.         private static List<Criminal> GenerateCriminals()
  51.         {
  52.             Random rand = new Random();
  53.  
  54.             string[] names = { "Джон", "Хью", "Энн", "Джек", "Уил", "Марк", "Лиз", "Майкл", "Дэвис" };
  55.             string[] surnames = { "Сильвер", "Морган", "Смит", "Джонс", "Уильямс", "Сноу", "Миллер", "Борк" };
  56.             string[] crimes = { "Антиправительственное", "Убийство", "Мошенничество", "Кража" };
  57.  
  58.             List<Criminal> criminals = new List<Criminal>(rand.Next(5, 11));
  59.  
  60.             for (int i = 0; i < criminals.Capacity; i++)
  61.                 criminals.Add(new Criminal(
  62.                     names[rand.Next(0, names.Length)],
  63.                     surnames[rand.Next(0, surnames.Length)],
  64.                     crimes[rand.Next(0, crimes.Length)]));
  65.  
  66.             return criminals;
  67.         }
  68.     }
  69.  
  70.     class Criminal
  71.     {
  72.         public string Name { get; }
  73.         public string Surname { get; }
  74.         public string Crime { get; }
  75.  
  76.         public Criminal(string name, string surname, string crime)
  77.         {
  78.             Name = name;
  79.             Surname = surname;
  80.             Crime = crime;
  81.         }
  82.  
  83.         public void ShowInfo()
  84.         {
  85.             Console.WriteLine($"  Преступник: {Name} {Surname}\n" +
  86.                               $"  Преступление: {Crime}\n");
  87.         }
  88.     }
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement