using System.Collections.Generic;
namespace Lab1.TouristInformationCenter
{
///
/// Class used for storing functions that manipulate or filter data.
///
class TaskUtils
{
///
/// Return a sub-list of given museums where all museums in the returned list are free and have a guide.
///
/// List of museums
/// Filtered sub-list of museums
public static List FilterByFreeAndWithGuide(List museums)
{
List filtered = new List();
foreach (Museum museum in museums)
{
if (museum.HasGuide && museum.Price == 0)
{
filtered.Add(museum);
}
}
return filtered;
}
///
/// Return a sub-list of given museums where all museums in the returned list are "active".
/// A museum is considered active if it is working at least 5 times a week.
///
/// List of museums
/// Filtered sub-list of museums
public static List FilterByActiveMuseums(List museums)
{
List filtered = new List();
foreach (Museum museum in museums)
{
if (museum.Workdays.Count >= 5)
{
filtered.Add(museum);
}
}
return filtered;
}
///
/// Return a sub-list of given museums where all museums in the returned list are from "non-popular" cities.
/// A city is "non-popular" if it is not "Vilnius", "Kaunas" or "Klaipėda".
///
/// List of museums
/// Filtered sub-list of museums
public static List FilterByNonPopularCity(List museums)
{
List filtered = new List();
foreach (Museum museum in museums)
{
if (!(museum.City.Equals("Vilnius") || museum.City.Equals("Kaunas") || museum.City.Equals("Klaipėda")))
{
filtered.Add(museum);
}
}
return filtered;
}
}
}