예제 #1
0
        //Максимальна кількість голів за день
        public GoalsPerDay MaxGoalsPerDay()
        {
            int maxGoals = DateOfMatch.Max(date => date.CountOfGoals);
            int index    = DateOfMatch.FindIndex(i => i.CountOfGoals == maxGoals);

            return(DateOfMatch[index]);
        }
예제 #2
0
        public void Config()
        {
            //teams = new List<FootballTeam>();
            //DateOfMatch = new List<GoalsPerDay>();

            for (int i = 0; i < League.Matches.Length; i++)
            {
                FootballTeam team = new FootballTeam();
                team.Name = League.Matches[i].team1.ToString();
                if (!teams.Contains(team))
                {
                    teams.Add(team);// Записуємо назви всіх команд
                }
                // На випадок, якщо команда грала всі матчі тільки на виїзді

                /*team.Name = League1.Matches[i].team2.ToString();
                 * if (!teams.Contains(team))
                 *  teams.Add(team);*/

                GoalsPerDay goalsPerDay = new GoalsPerDay();
                goalsPerDay.Date = League.Matches[i].date;
                if (!DateOfMatch.Contains(goalsPerDay))
                {
                    DateOfMatch.Add(goalsPerDay);//Записуємо всі дні коли були матчі
                }
            }

            // Підрахунок кількості голів щодня
            foreach (var date in DateOfMatch)
            {
                //date.CountOfGoals = League.Matches.Where(team => team.date == date.Date).Sum(match => match?.score?.ft[1] ?? 0 + match?.score?.ft[0] ?? 0));
                int counts1 = League.Matches.Where(team => team.date == date.Date).Sum(match => match?.score?.ft[1] ?? 0);
                int counts2 = League.Matches.Where(team => team.date == date.Date).Sum(match => match?.score?.ft[0] ?? 0);
                date.CountOfGoals += counts1 + counts2;
            }

            //Підрахунок забитих і пропущених голів для кожної команди
            foreach (var team in teams)
            {
                //Кількість забитих м'ячів вдома
                int countOfGoalsAtHome = League.Matches.Where(match => match.team1 == team.Name).Sum(match => match?.score?.ft[0] ?? 0);
                //Кількість забитих м'ячів на виїзді
                int countofGoalsOnTheRoad = League.Matches.Where(match => match.team2 == team.Name).Sum(match => match?.score?.ft[1] ?? 0);

                team.GoalsScored = countOfGoalsAtHome + countofGoalsOnTheRoad;

                //Кількість пропущених м'ячів вдома
                int countOfMissGoalsAtHome = League.Matches.Where(match => match.team1 == team.Name).Sum(match => match?.score?.ft[1] ?? 0);
                //Кількість пропущених м'ячів на виїзді
                int countofMissGoalsOnTheRoad = League.Matches.Where(match => match.team2 == team.Name).Sum(match => match?.score?.ft[0] ?? 0);

                team.MissedBalls = countOfMissGoalsAtHome + countofMissGoalsOnTheRoad;
            }
        }