Torgach

TopPlayers

May 23rd, 2021 (edited)
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.54 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 TopPlayers
  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<Player> _players = new List<Player>();
  21.  
  22.         public Menu()
  23.         {
  24.             _players = new List<Player>()
  25.             {
  26.                 new Player("Bob", 10, 5),
  27.                 new Player("Anrew", 5, 2),
  28.                 new Player("Anna", 30, 15),
  29.                 new Player("Anrew", 100, 70),
  30.                 new Player("V", 56, 45)
  31.             };
  32.         }
  33.  
  34.         public void Run()
  35.         {
  36.             bool isRun = true;
  37.  
  38.             while(isRun)
  39.             {
  40.                 Console.WriteLine("1)Вывести топ-3 игроков по уровню\n" +
  41.                     "2)Вывести топ-3 игроков по силе\n" +
  42.                     "3)Выход");
  43.                 Console.Write("Ввод: ");
  44.  
  45.                 switch (Console.ReadLine())
  46.                 {
  47.                     case "1":
  48.                         FilterPlayersByLevel();
  49.                         break;
  50.                     case "2":
  51.                         FilterPlayersByStrength();
  52.                         break;
  53.                     case "3":
  54.                         isRun = false;
  55.                         break;
  56.                 }
  57.             }
  58.         }
  59.  
  60.         private void FilterPlayersByLevel()
  61.         {
  62.             var filteredPlayers = _players.OrderByDescending(player => player.Level).Take(3);
  63.  
  64.             foreach (var player in filteredPlayers)
  65.             {
  66.                 Console.WriteLine($"Игрок: {player.Name}; Lvl = {player.Level}");
  67.             }
  68.         }
  69.  
  70.         private void FilterPlayersByStrength()
  71.         {
  72.             var filteredPlayers = _players.OrderByDescending(player => player.Strength).Take(3);
  73.  
  74.             foreach (var player in filteredPlayers)
  75.             {
  76.                 Console.WriteLine($"Игрок: {player.Name}; Strenght = {player.Strength}");
  77.             }
  78.         }
  79.     }
  80.  
  81.     class Player
  82.     {
  83.         public string Name { get; private set; }
  84.         public int Level { get; private set; }
  85.         public int Strength { get; private set; }
  86.  
  87.         public Player(string name, int level, int strength)
  88.         {
  89.             Name = name;
  90.             Level = level;
  91.             Strength = strength;
  92.         }
  93.     }
  94. }
Add Comment
Please, Sign In to add comment