Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace Ijunior
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- Army army = new Army();
- army.Work();
- }
- }
- class Army
- {
- private Database _database = new Database();
- public void Work()
- {
- string letter = "Б";
- ShowPlatoons();
- Console.WriteLine($"\nПеревод солдат с фамилией на букву {letter}\n");
- _database.TransferSoldiers(letter);
- ShowPlatoons();
- }
- private void ShowPlatoons()
- {
- Console.WriteLine("Первый отряд:\n");
- _database.ShowInfo(_database.FirstPlatoon);
- Console.WriteLine("\nВторой отряд:\n");
- _database.ShowInfo(_database.SecondPlatoon);
- }
- }
- class Database
- {
- private List<Soldier> _firstPlatoon;
- private List<Soldier> _secondPlatoon;
- public Database()
- {
- _firstPlatoon = new List<Soldier>();
- _secondPlatoon = new List<Soldier>();
- AddSoldiers();
- }
- public List<Soldier> FirstPlatoon => _firstPlatoon.ToList();
- public List<Soldier> SecondPlatoon => _secondPlatoon.ToList();
- public void TransferSoldiers(string letter)
- {
- var transferredSoldiers = _firstPlatoon.Where(soldier => soldier.Name.StartsWith(letter));
- _secondPlatoon = _secondPlatoon.Union(transferredSoldiers).ToList();
- _firstPlatoon = _firstPlatoon.Except(transferredSoldiers).ToList();
- }
- public void ShowInfo(List<Soldier> platoon)
- {
- foreach (Soldier soldier in platoon)
- {
- Console.WriteLine($"{soldier.Name}");
- }
- }
- private void AddSoldiers()
- {
- _firstPlatoon.Add(new Soldier("Александров"));
- _firstPlatoon.Add(new Soldier("Борисов"));
- _firstPlatoon.Add(new Soldier("Беляев"));
- _firstPlatoon.Add(new Soldier("Гусев"));
- _firstPlatoon.Add(new Soldier("Быков"));
- _secondPlatoon.Add(new Soldier("Егоров"));
- _secondPlatoon.Add(new Soldier("Кузнецов"));
- _secondPlatoon.Add(new Soldier("Лебедев"));
- _secondPlatoon.Add(new Soldier("Павлов"));
- _secondPlatoon.Add(new Soldier("Васильев"));
- }
- }
- class Soldier
- {
- public Soldier(string name)
- {
- Name = name;
- }
- public string Name { get; }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment