Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace TopPlayers
- {
- class Program
- {
- static void Main(string[] args)
- {
- TopPlayers topPlayers = new TopPlayers();
- topPlayers.ShowTopPlayers();
- }
- }
- class TopPlayers
- {
- private List<Player> _players = new List<Player>();
- private const int _countOfTopPlayerss = 3;
- public TopPlayers()
- {
- Fill();
- }
- public void ShowTopPlayers()
- {
- Console.WriteLine("List of Players:");
- ShowInfo(_players);
- Console.WriteLine($"\nTop {_countOfTopPlayerss} by lvl:");
- ShowInfo(SortTopByLvl());
- Console.WriteLine($"\nTop {_countOfTopPlayerss} by Power:");
- ShowInfo(SortTopByPower());
- Console.ReadKey();
- }
- private List<Player> SortTopByPower()
- {
- var topByPower = _players.OrderByDescending(player => player.Power).Take(_countOfTopPlayerss);
- return topByPower.ToList<Player>();
- }
- private List<Player> SortTopByLvl()
- {
- var topByLvl = _players.OrderByDescending(player => player.Lvl).Take(_countOfTopPlayerss);
- return topByLvl.ToList<Player>();
- }
- private void ShowInfo(List<Player> players)
- {
- if (players != null)
- {
- foreach (var player in players)
- {
- player.ShowInfo();
- }
- }
- }
- private void Fill()
- {
- Random random = new Random();
- _players.Add(new Player("Almi", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Kis", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Northon", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Adam", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Lox", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Fox", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Norx", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Moksi", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Dabla", random.Next(1, 50), random.Next(20, 100)));
- _players.Add(new Player("Pudge", random.Next(1, 50), random.Next(20, 100)));
- }
- }
- class Player
- {
- public string Name { get; private set; }
- public int Lvl { get; private set; }
- public int Power { get; private set; }
- public Player(string name, int lvl, int power)
- {
- Name = name;
- Lvl = lvl;
- Power = power;
- }
- public void ShowInfo()
- {
- Console.WriteLine($"Name - {Name}, Lvl - {Lvl}, Power - {Power}");
- }
- }
- }
Add Comment
Please, Sign In to add comment