T
As long as you've made that decision, it's a number of unsuccessful:using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<Student> students = new List<Student>
{
new Student { ID = 0 },
new Student { ID = 1 },
new Student { ID = 2 },
new Student { ID = 3 },
new Student { ID = 4 },
new Student { ID = 5 },
new Student { ID = 6 },
new Student { ID = 7 },
new Student { ID = 8 },
new Student { ID = 9 }
};
List<Mark> marks = new List<Mark>
{
new Mark { ID_Studenta = 0, Itog = 41 },
new Mark { ID_Studenta = 0, Itog = 48 },
new Mark { ID_Studenta = 0, Itog = 43 },
new Mark { ID_Studenta = 1, Itog = 40 },
new Mark { ID_Studenta = 1, Itog = 41 },
new Mark { ID_Studenta = 1, Itog = 28 },
new Mark { ID_Studenta = 2, Itog = 50 },
new Mark { ID_Studenta = 2, Itog = 55 },
new Mark { ID_Studenta = 2, Itog = 59 },
new Mark { ID_Studenta = 3, Itog = 30 },
new Mark { ID_Studenta = 3, Itog = 29 },
new Mark { ID_Studenta = 3, Itog = 36 },
new Mark { ID_Studenta = 4, Itog = 48 },
new Mark { ID_Studenta = 4, Itog = 46 },
new Mark { ID_Studenta = 4, Itog = 42 },
new Mark { ID_Studenta = 5, Itog = 41 },
new Mark { ID_Studenta = 5, Itog = 40 },
new Mark { ID_Studenta = 5, Itog = 43 },
new Mark { ID_Studenta = 6, Itog = 39 },
new Mark { ID_Studenta = 6, Itog = 42 },
new Mark { ID_Studenta = 6, Itog = 46 },
new Mark { ID_Studenta = 7, Itog = 30 },
new Mark { ID_Studenta = 7, Itog = 30 },
new Mark { ID_Studenta = 7, Itog = 50 },
new Mark { ID_Studenta = 8, Itog = 45 },
new Mark { ID_Studenta = 8, Itog = 46 },
new Mark { ID_Studenta = 8, Itog = 49 },
new Mark { ID_Studenta = 9, Itog = 40 },
new Mark { ID_Studenta = 9, Itog = 38 },
new Mark { ID_Studenta = 9, Itog = 48 }
};
int c = students.Join(marks, s => s.ID, m => m.ID_Studenta, (s, m) => new { id = s.ID, itog = m.Itog })
.Where(a => a.itog < 41)
.GroupBy(a => a.id)
.Count();
Console.WriteLine(c);
}
}
class Student
{
public long ID { get; set; }
}
class Mark
{
public long ID_Studenta { get; set; }
public int Itog { get; set; }
}
A more literate decision could be given by SQL specialists, perhaps you should add that mark.