Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace CSLightFirst
- {
- class Program
- {
- private static void Main()
- {
- List<Player> players = GeneratePlayers();
- while (true)
- {
- Console.WriteLine("Выберите, что Вам нужно сделать:\n" +
- " 1 - Определить топ-3 игроков по уровню\n" +
- " 2 - Определить топ-3 игроков по силе\n" +
- " 3 - Показать всех игроков");
- Console.Write("Ваш ответ: ");
- switch (Console.ReadLine())
- {
- case "1":
- MakeLevelSelection(players);
- break;
- case "2":
- MakePowerSelection(players);
- break;
- case "3":
- ShowSelection(players);
- break;
- default:
- Console.WriteLine("Некорректное введенное значение, попробуйте ещё раз...");
- break;
- }
- }
- }
- private static void MakeLevelSelection(IEnumerable<Player> players)
- {
- ShowSelection(players
- .OrderByDescending(player => player.Level)
- .Take(3));
- }
- private static void MakePowerSelection(IEnumerable<Player> players)
- {
- ShowSelection(players
- .OrderByDescending(player => player.Power)
- .Take(3));
- }
- private static void ShowSelection(IEnumerable<Player> selection)
- {
- Console.Clear();
- Console.WriteLine();
- foreach (Player player in selection)
- player.ShowInfo();
- }
- private static List<Player> GeneratePlayers()
- {
- Random rand = new Random();
- string[] names = { "Джон", "Хью", "Энн", "Джек", "Уил", "Марк", "Лиз", "Майкл", "Дэвис" };
- List<Player> players = new List<Player>(rand.Next(10, 16));
- for (int i = 0; i < players.Capacity; i++)
- players.Add(new Player(names[rand.Next(0, names.Length)], rand.Next(0, 51), rand.Next(0, 200)));
- return players;
- }
- }
- class Player
- {
- public string Name { get; }
- public int Level { get; }
- public int Power { get; }
- public Player(string name, int level, int power)
- {
- Name = name;
- Level = level;
- Power = power;
- }
- public void ShowInfo()
- {
- Console.WriteLine($" Игрок: {Name}\n" +
- $" Уровень: {Level}\n" +
- $" Сила: {Power}\n");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement