Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace Clight_43_LINQ_WeaponsReport
- {
- class Program
- {
- static void Main(string[] args)
- {
- Random random = new Random();
- List<string> names = new List<string> { "Иван", "Владимир", "Григорий", "Генадий", "Вадим",
- "Игорь", "Евгений", "Владислав", "Егор", "Руслан", "Сергей", "Кирилл" };
- List<string> weapons = new List<string> { "Пистолет", "Автомат", "Гранатомет", "Святая овца" };
- List<string> ranks = new List<string> { "Рядовой", "Ефрейтор", "Сержант", "Старшина" };
- List<Soldier> soldiers = new List<Soldier> { };
- for (int i = 0; i < 6; i++)
- {
- string tempName = names[random.Next(0, names.Count)];
- string tempWeapon = weapons[random.Next(0, weapons.Count)];
- string tempRank = ranks[random.Next(0, ranks.Count)];
- int tempServiceLife = random.Next(1, 11);
- Soldier tempSoldier = new Soldier(tempName, tempWeapon, tempRank, tempServiceLife);
- soldiers.Add(tempSoldier);
- }
- bool isWorks = true;
- while (isWorks)
- {
- Console.CursorVisible = false;
- Console.Clear();
- Console.WriteLine("F1 - Показать список солдат.");
- Console.WriteLine("F2 - Выход.");
- ConsoleKeyInfo key = Console.ReadKey();
- switch (key.Key)
- {
- case ConsoleKey.F1:
- Console.WriteLine("\nCписок солдат (Имя, Звание): ");
- ShowFilteredInfo(soldiers);
- Console.WriteLine("\nДля возврата в меню нажмите любую клавишу.");
- Console.ReadKey();
- break;
- case ConsoleKey.F2:
- isWorks = false;
- break;
- default:
- break;
- }
- }
- }
- public static void ShowFilteredInfo(List<Soldier> soldiers)
- {
- var selectedFieldsBySoldiers = from Soldier soldier in soldiers
- orderby soldier.Name
- select (soldier.Name, soldier.Rank);
- foreach (var soldier in selectedFieldsBySoldiers)
- {
- Console.WriteLine($"{soldier.Name}, {soldier.Rank}");
- }
- }
- }
- class Soldier
- {
- public string Name { get; private set; }
- public string Weapon { get; private set; }
- public string Rank { get; private set; }
- public int ServiceLife { get; private set; }
- public Soldier(string name, string weapon, string rank, int serviceLife)
- {
- Name = name;
- Weapon = weapon;
- Rank = rank;
- ServiceLife = serviceLife;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement