Advertisement
Torgach

UnificationTroops

May 24th, 2021 (edited)
320
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.38 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace UnificationTroops
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             Menu menu = new Menu();
  14.             menu.Run();
  15.         }
  16.     }
  17.  
  18.     class Menu
  19.     {
  20.         private List<Soldier> _southSquad;
  21.         private List<Soldier> _northSquad;
  22.  
  23.         public Menu()
  24.         {
  25.             _southSquad = new List<Soldier>()
  26.             {
  27.                 new Soldier("Bobler"),
  28.                 new Soldier("Alex"),
  29.                 new Soldier("B.Magnum"),
  30.                 new Soldier("Lokar")
  31.             };
  32.  
  33.             _northSquad = new List<Soldier>()
  34.             {
  35.                 new Soldier("Trader"),
  36.                 new Soldier("BorWarden"),
  37.                 new Soldier("Lukan"),
  38.                 new Soldier("Borry")
  39.             };
  40.         }
  41.  
  42.         public void Run()
  43.         {
  44.             bool isRun = true;
  45.  
  46.             while (isRun)
  47.             {
  48.                 ShowSquad(_southSquad);
  49.                 Console.WriteLine();
  50.                 ShowSquad(_northSquad);
  51.  
  52.                 Console.WriteLine("\n1)Объединить и вывести солдат\n" +
  53.                     "2)Выход");
  54.                 Console.Write("Ввод: ");
  55.  
  56.                 switch (Console.ReadLine())
  57.                 {
  58.                     case "1":
  59.                         UniteSquads();
  60.                         break;
  61.                     case "2":
  62.                         isRun = false;
  63.                         break;
  64.                 }
  65.             }
  66.         }
  67.  
  68.         private void UniteSquads()
  69.         {
  70.             var tempNorthSquad = _northSquad.Where(soldier => soldier.Name.StartsWith("B")).ToList();
  71.  
  72.             foreach (var soldier in tempNorthSquad)
  73.             {
  74.                 _northSquad.Remove(soldier);
  75.             }
  76.  
  77.             _southSquad = _southSquad.Union(tempNorthSquad).ToList();
  78.         }
  79.  
  80.         private void ShowSquad(List<Soldier> soldiers)
  81.         {
  82.             foreach (var soldier in soldiers)
  83.             {
  84.                 Console.WriteLine(soldier.Name);
  85.             }
  86.         }
  87.     }
  88.    
  89.     class Soldier
  90.     {
  91.         public string Name { get; private set; }
  92.  
  93.         public Soldier(string name)
  94.         {
  95.             Name = name;
  96.         }
  97.     }
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement