public static void Main()
        {
            StudentsDirectory database = new StudentsDirectory();

            // printing
            database.Students.PrintStudentsInfo();
        }
        public static void Main()
        {
            StudentsDirectory database = new StudentsDirectory();

               // printing
               database.Students.PrintStudentsInfo();
        }
 static void Main(string[] args)
 {
     StudentsDirectory database = new StudentsDirectory();
     var result = database.Students.OrderByDescending(w => w.FirstName).ThenByDescending(s => s.LastName);
     foreach (var student in result)
     {
         Console.WriteLine("First Name: {0}, Last Name: {1}, Age: {2}, Faculty Number: {3}, Phone: {4}, Email: {5}, Marks: {5}", student.FirstName, student.LastName, student.Age, student.FacultyNumber, student.PhoneNumber,student.Email, string.Join(", ", student.Marks));
         Console.WriteLine();
     }
 }
 static void Main(string[] args)
 {
     StudentsDirectory database = new StudentsDirectory();
     var result = from student in database.Students
                  where student.Marks.Contains(6)
                  select new {FullName=string.Join(" ",student.FirstName,student.LastName), Marks=string.Join(" ",student.Marks) };
     foreach (var student in result)
     {
         Console.WriteLine("Name: {0} - Grades: {1}", student.FullName, student.Marks);
     }
 }
 static void Main(string[] args)
 {
     StudentsDirectory database = new StudentsDirectory();
     var result = from student in database.Students
                  where student.Age > 18 && student.Age < 24
                  select new { student.FirstName, student.LastName, student.Age };
     foreach (var student in result)
     {
         Console.WriteLine("First Name: {0}, Last Name: {1}, Age: {2}",student.FirstName,student.LastName,student.Age);
     }
 }
 static void Main(string[] args)
 {
     StudentsDirectory database = new StudentsDirectory();
     var result = from student in database.Students
                  where student.PhoneNumber.Contains("02") || student.PhoneNumber.Contains("+3592") || student.PhoneNumber.Contains("+359 2")
                  select student;
     foreach (var student in result)
     {
         Console.WriteLine("First Name: {0}, Last Name: {1}, Age: {2}, Faculty Number: {3}, Phone: {4}, Email: {5}, Marks: {5}", student.FirstName, student.LastName, student.Age, student.FacultyNumber, student.PhoneNumber, student.Email, string.Join(", ", student.Marks));
         Console.WriteLine();
     }
 }
 static void Main()
 {
     StudentsDirectory database = new StudentsDirectory();
     var result = from student in database.Students
                  where student.Marks.Contains(2)
                  select new { FullName = string.Join(" ", student.FirstName, student.LastName), Marks = string.Join(" ", student.Marks) };
     int count;
     foreach (var student in result)
     {
         count = 0;
         foreach (var mark in student.Marks)
         {
             if (mark == '2')
                 count++;
         }
         if (count == 2)
             Console.WriteLine("Name: {0}, Marks: {1}", student.FullName, student.Marks);
     }
 }