Работа со списком List<> - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Есть задание реализовать футбольный матч. Есть класс с именем и возрастом игрока
namespace FoothballGame
{
   abstract class Person
    {
       protected string abstractName;
       protected int abstractAge;
    }
}
Есть класс в котором в зависимости от возраста игрока генерируется его уровень игры
class Player:Person
    {
        int lvl;
        public Player(string name, int age)
        {
            abstractName = name;
            abstractAge = age;
        }
        public int Player_LVL()
        {
         Random r=new Random();
         for (int i = 0; i < 5; i++)
             if (abstractAge < 30) lvl = r.Next(20, 70);
             else lvl = r.Next(30, 50);
         return lvl;
        }
        public string Name{get { return abstractName;}}
        public int Age {get { return abstractAge;}}
    }
Помогите сделать класс Team реализующий список добавленных игроков в основной программе посредством List<Player>, что бы можно было суммировать их командный уровень игры а потом сравнить для определения результата, а то я чет совсем запутался. Пока что он у меня может только выводить уровень игры команды, да и то сравнить две команды не удается
class Team
    {
       public int getTeamLvl(List<Player> players)
        {
            int lvl = 0;
            foreach (Player pl in players)
            {
              lvl += pl.Player_LVL();
            }
            return lvl; 
        }
    }
Вот тут есть еще класс Game
 class Game
    {
        public string Winner(int firstTeam, int secondTeam)
        {
            if (firstTeam > secondTeam) return "Победил Шахтер!";
           
            else return "Металист чемпион!";
            
        }
    }
ну и основная программа
class Program
    {
        static void Main(string[] args)
        {
            List<Player>sostav1=new List<Player>();
            List<Player> sostav2 = new List<Player>();
            Team masterLevel = new Team();
            
            Console.WriteLine("Шахтер");
            sostav1.Add(new Player("Shevchenko", 32));
            sostav1.Add(new Player("Voronin", 29));
            foreach (Player player in sostav1)
            {
                Console.Write(player.Name + " ");
                Console.Write(player.Age + " ");
                Console.WriteLine("Rank playing: " + player.Player_LVL());
            }
            Console.WriteLine("Уровень игры первой команды "+masterLevel.getTeamLvl(sostav1));
            Console.WriteLine();
            Console.ReadKey();
            Console.WriteLine("Металист");
            sostav2.Add(new Player("Petrenko", 25));
            sostav2.Add(new Player("Ivanov", 33));
            foreach (Player player in sostav2)
            {
                Console.Write(player.Name + " ");
                Console.Write(player.Age + " ");
                Console.WriteLine("Rank playing: " + player.Player_LVL());
            }
            Console.WriteLine("Уровень игры второй команды " + masterLevel.getTeamLvl(sostav2));   
            Console.ReadKey();
 
            Game rezult = new Game();
            Console.WriteLine(rezult.Winner(masterLevel.getTeamLvl(sostav1), masterLevel.getTeamLvl(sostav2)));

            Console.ReadKey();
        }

Решение задачи: «Работа со списком List<>»

textual
Листинг программы
class Team
    {
        string team_name;
        string trainerName;
        List<Player> Players=new List<Player>();
        int team_level;
        Trainer trainer;
 
        public Team(string team_name, string trainername, List<Player>players)
        {
            
            trainerName = trainername;
            trainer=new Trainer(trainername);
            this.team_name = team_name;
            Players = players;
            int i = 0;
            Console.WriteLine("Team "+Team_name);
           
            foreach (Player player in players)
            {
                i++;
                Console.Write(i+". "+player.Name + " Age: "+player.Age+"\n     Personal level: "+player.Player_LVL());
                Console.WriteLine();
                team_level+= player.Player_LVL();
            }
            Console.WriteLine("Their treaner is: "+trainer.TrainerName+"He is "+trainer.Trainer_Age()+". Hes expirience in trainning costs: "+trainer.TrainLevel());
            team_level *= trainer.TrainLevel();
            Thread.Sleep(100);
        }
 
        public int Team_level
        {get { return team_level;}}
        public string Team_name
        { get { return team_name; } }
        public string TrainerName
        {get { return trainerName; } }
     }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5