Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //У нас есть список всех игроков(минимум 10).
- //У каждого игрока есть поля: имя, уровень, сила.
- //Требуется написать запрос для определения топ 3 игроков по уровню и топ 3 игроков по силе, после чего вывести каждый топ.
- //2 запроса получится.
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace TopServerPlayers
- {
- public static class Program
- {
- static void Main(string[] args)
- {
- List<Player> players = new List<Player>
- {
- new Player ("Меткая Мазила", 50, 25),
- new Player ("Ведро с крабами", 35, 35),
- new Player ("А я думала сова", 45, 105),
- new Player ("Али Ибн Назад Вперед Фолл", 29, 80),
- new Player ("Я есть Грут",44, 100),
- new Player ("Антистрайк", 30, 80),
- new Player ("Я Пофиг Мне Камень", 32, 79),
- new Player ("Хелп Ми Нига", 57, 98),
- new Player ("Не поминать Лохом", 53, 95),
- new Player ("Я за Клинским", 34, 60),
- new Player ("Ща Ультану", 25, 45),
- new Player ("Чих Ехидны", 36, 69),
- new Player ("Дратути", 70, 250),
- };
- Information information = new Information(players);
- int countTop = 3;
- Console.WriteLine($"Показать топ {countTop} игроков по уровню\n");
- information.ShowTopPlayersByLevel(countTop);
- Console.WriteLine($"\nПоказать топ {countTop} игроков по силе\n");
- information.ShowTopPlayersByPower(countTop);
- }
- }
- class Player
- {
- public Player(string login, int level, int power)
- {
- Login = login;
- Level = level;
- Power = power;
- }
- public string Login { get; private set; }
- public int Level { get; private set; }
- public int Power { get; private set; }
- public void ShowInfo()
- {
- Console.WriteLine($"Ник: {Login}, Уровень: {Level}, Сила: {Power}");
- }
- }
- class Information
- {
- private List<Player> _player;
- public Information(List<Player> player)
- {
- _player = player;
- }
- public void ShowTopPlayersByLevel(int countTop)
- {
- var sortedsortedPlayers = _player.OrderByDescending(player => player.Level).Take(countTop);
- ShowPlayers(sortedsortedPlayers);
- }
- public void ShowTopPlayersByPower(int countTop)
- {
- var sortedsortedPlayers = _player.OrderByDescending(player => player.Power).Take(countTop);
- ShowPlayers(sortedsortedPlayers);
- }
- private void ShowPlayers(IEnumerable<Player> sortedPlayers)
- {
- foreach (var player in sortedPlayers)
- {
- player.ShowInfo();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement