Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace Army
- {
- public class Program
- {
- static void Main(string[] args)
- {
- SoldierService service = new SoldierService();
- service.Run();
- }
- }
- public class Soldier
- {
- public Soldier(string name, string weapon, string rank, int serviceTerm)
- {
- Name = name;
- Weapon = weapon;
- Rank = rank;
- ServiceTerm = serviceTerm;
- }
- public string Name { get; private set; }
- public string Weapon { get; private set; }
- public string Rank { get; private set; }
- public int ServiceTerm { get; private set; }
- }
- public class SoldierCreator
- {
- public List<Soldier> CreateSoldiers()
- {
- return new List<Soldier>
- {
- new Soldier("Иванов Иван", "Автомат", "Рядовой", 12),
- new Soldier("Петров Петр", "Пулемет", "Сержант", 24),
- new Soldier("Сидоров Сидор", "Снайперская винтовка", "Старший сержант", 36),
- new Soldier("Кузнецов Алексей", "Пистолет", "Лейтенант", 48),
- new Soldier("Смирнов Дмитрий", "Гранатомет", "Капитан", 60),
- new Soldier("Васильев Артем", "Автомат", "Рядовой", 10),
- new Soldier("Морозов Павел", "Пулемет", "Сержант", 18),
- };
- }
- }
- public class SoldierService
- {
- private readonly List<Soldier> _soldiers;
- public SoldierService()
- {
- SoldierCreator creator = new SoldierCreator();
- _soldiers = creator.CreateSoldiers();
- }
- public void Run()
- {
- const string CommandToShowNamesAndRanks = "1";
- const string CommandToExit = "2";
- bool isRunning = true;
- while (isRunning)
- {
- Console.Clear();
- Console.WriteLine("Меню:");
- Console.WriteLine($"{CommandToShowNamesAndRanks}. Показать имена и звания всех солдат");
- Console.WriteLine($"{CommandToExit}. Выход");
- Console.Write("Выберите пункт меню: ");
- string userInput = Console.ReadLine();
- switch (userInput)
- {
- case CommandToShowNamesAndRanks:
- ShowNamesAndRanks();
- break;
- case CommandToExit:
- isRunning = false;
- break;
- default:
- Console.WriteLine("Некорректный ввод. Попробуйте снова.");
- break;
- }
- if (isRunning)
- {
- Pause();
- }
- }
- }
- private void ShowNamesAndRanks()
- {
- var nameAndRank = _soldiers.Select(soldier => new { soldier.Name, soldier.Rank }).ToList();
- Console.WriteLine("\nИмена и звания всех солдат:");
- foreach (var person in nameAndRank)
- {
- Console.WriteLine($"{person.Name}, звание: {person.Rank}");
- }
- }
- private void Pause()
- {
- Console.WriteLine("\nНажмите любую клавишу для продолжения...");
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment