W1thr

LINQ-4

Jun 10th, 2021 (edited)
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.93 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 Homework4
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             Random random = new Random();
  14.             List<Player> players = new List<Player>
  15.             {
  16.                 new Player(random.Next(10,100),random.Next(10,100)),
  17.                 new Player(random.Next(10,100),random.Next(10,100)),
  18.                 new Player(random.Next(10,100),random.Next(10,100)),
  19.                 new Player(random.Next(10,100),random.Next(10,100)),                
  20.                 new Player(random.Next(10,100),random.Next(10,100)),
  21.                 new Player(random.Next(10,100),random.Next(10,100)),
  22.                 new Player(random.Next(10,100),random.Next(10,100)),
  23.                 new Player(random.Next(10,100),random.Next(10,100)),
  24.                 new Player(random.Next(10,100),random.Next(10,100)),
  25.                 new Player(random.Next(10,100),random.Next(10,100)),
  26.                 new Player(random.Next(10,100),random.Next(10,100)),
  27.                 new Player(random.Next(10,100),random.Next(10,100)),
  28.                 new Player(random.Next(10,100),random.Next(10,100)),
  29.                 new Player(random.Next(10,100),random.Next(10,100)),
  30.                 new Player(random.Next(10,100),random.Next(10,100)),
  31.             };
  32.  
  33.             Console.WriteLine("----По Уровню-----");
  34.             Console.WriteLine("level|power|name");
  35.             SortByParameter(players, "level");
  36.             Console.WriteLine("-----По Силе------");
  37.             SortByParameter(players, "power");
  38.         }
  39.  
  40.         static void SortByParameter(List<Player> players, string parameter)
  41.         {
  42.             var sortedPlayers = players.OrderBy(player => player.Name);
  43.  
  44.             if(parameter == "level")
  45.             {
  46.                 sortedPlayers = players.OrderByDescending(player => player.Level);
  47.             }
  48.             else if(parameter == "power")
  49.             {
  50.                 sortedPlayers = players.OrderByDescending(player => player.Power);
  51.             }
  52.             else
  53.             {
  54.                 Console.WriteLine("Такого параметра нет!");
  55.             }
  56.  
  57.             var filteredPlayers = sortedPlayers.Take(3);
  58.  
  59.             foreach (var player in filteredPlayers)
  60.             {
  61.                 player.ShowInfo();
  62.             }
  63.         }
  64.     }
  65.  
  66.     class Player
  67.     {
  68.         public int Level { get; private set; }
  69.         public int Power { get; private set; }
  70.         public string Name { get; private set; }
  71.  
  72.         public Player(int level = 1, int power = 1, string name = "player")
  73.         {
  74.             Level = level;
  75.             Power = power;
  76.             Name = name;
  77.         }
  78.  
  79.         public void ShowInfo()
  80.         {
  81.             Console.WriteLine(Level + "   |" + Power + "   |" +  Name);
  82.         }
  83.     }
  84. }
  85.  
Add Comment
Please, Sign In to add comment