Skip to content

Instantly share code, notes, and snippets.

@tsk-arh
Last active February 12, 2024 16:22
Show Gist options
  • Save tsk-arh/ed4a0e2ce4b337b147bc67e88349acb7 to your computer and use it in GitHub Desktop.
Save tsk-arh/ed4a0e2ce4b337b147bc67e88349acb7 to your computer and use it in GitHub Desktop.
ЗАДАНИЕ Объединение войск
using System;
using System.Collections.Generic;
using System.Linq;
namespace ConsoleApp4
{
internal class Program
{
static void Main(string[] args)
{
List<Soldier> platoonOne = new List<Soldier> {
new Soldier ("Петров Петр Петрович", "Ак 74", "рядовой", 1),
new Soldier ("Бидоров Сидор Сидорыч", "ППС", "сержант", 3),
new Soldier ("Байден Байден Байденович", "ПКМ", "лейтенант", 5),
};
List<Soldier> platoonTwo = new List<Soldier> {
new Soldier ("Лямкин Дрист Корнетыч", "СВД", "капитан", 9),
new Soldier ("Кабздец Христофор Василич", "Тополь-М", "майор", 12)
};
Console.WriteLine("\nСостав взводов до перевода бойцов\n");
ShowAllPlatoons(platoonOne, platoonTwo);
string keyToSearch = "Б";
var filtredNameSoldier = platoonOne.Where(soldier => soldier.Name.StartsWith(keyToSearch));
platoonOne = platoonOne.Except(filtredNameSoldier).ToList();
platoonTwo = platoonTwo.Union(filtredNameSoldier).ToList();
Console.WriteLine("\nСостав взводов после перевода бойцов\n");
ShowAllPlatoons(platoonOne, platoonTwo);
Console.ReadLine();
}
private static void ShowAllPlatoons(List<Soldier> platoonOne, List<Soldier> platoonTwo)
{
Console.WriteLine("Отряд один:");
ShowPlatoon(platoonOne);
Console.WriteLine("\nОтряд два");
ShowPlatoon(platoonTwo);
}
private static void ShowPlatoon(List<Soldier> soldiers)
{
for (int i = 0; i < soldiers.Count; i++)
{
Console.WriteLine($"{i + 1} Имя: {soldiers[i].Name} Звание: {soldiers[i].Rank}");
}
}
}
class Soldier
{
public Soldier(string name, string wearpon, string rank, int serviceLifeTimeMounth)
{
Name = name;
Wearpon = wearpon;
Rank = rank;
ServiceLifeTime = serviceLifeTimeMounth;
}
public string Name { get; private set; }
public string Wearpon { get; private set; }
public string Rank { get; private set; }
public int ServiceLifeTime { get; private set; }
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment