static void Main() { CSet setA = new CSet(); CSet setB = new CSet(); setA.Add("milk"); setA.Add("eggs"); setA.Add("bacon"); setA.Add("cereal"); setB.Add("bacon"); setB.Add("eggs"); setB.Add("bread"); CSet setC = new CSet(); setC = setA.Union(setB); Console.WriteLine(); Console.WriteLine("A: " + setA.ToString()); Console.WriteLine("B: " + setB.ToString()); Console.WriteLine("A union B: " + setC.ToString()); setC = setA.Intersection(setB); Console.WriteLine("A intersect B: " + setC.ToString()); setC = setA.Difference(setB); Console.WriteLine("A diff B: " + setC.ToString()); setC = setB.Difference(setA); Console.WriteLine("B diff A: " + setC.ToString()); if (setB.isSubset(setA)) { Console.WriteLine("b is a subset of a"); } else { Console.WriteLine("b is not a subset of a"); } Console.ReadKey(); }
static void Main() { CSet setA = new CSet(); CSet setB = new CSet(); setA.Add(1); setA.Add(2); setA.Add(3); setB.Add(2); setB.Add(3); CSet setC = new CSet(); setC = setA.Union(setB); Console.WriteLine(); Console.WriteLine(setA.ToString()); Console.WriteLine(setC.ToString()); setC = setA.Intersection(setB); Console.WriteLine(setC.ToString()); setC = setA.Difference(setB); Console.WriteLine(setC.ToString()); bool flag = setB.isSubset(setA); if (flag) { Console.WriteLine("b is a subset of a"); } else { Console.WriteLine("b is not a subset of a"); } Console.ReadKey(); }
//--------------------------------------------------------------------------------------------------------------------------------------------- static void Main(string[] args) { const int average = 6; CSet setA = new CSet(); CSet setB = new CSet(); for (int i = 0; i <= average; i++) { setA.Add(i); } for (int i = 5; i <= 10; i++) { setB.Add(i); } CSet.GetInfo(ref setA); Console.WriteLine(setA.ToString()); Console.WriteLine(); int c; CSet.GetCount(out c); Console.WriteLine($"Всего создано объектов: {c}"); Console.WriteLine(setA.ToStringEven()); Console.WriteLine(setA.ToStringUneven()); Console.WriteLine(setA.ToStringNegative()); Console.WriteLine(); CSet.GetInfo(ref setB); Console.WriteLine(setB.ToString()); CSet setC = setA.Union(setB); Console.WriteLine(); Console.WriteLine("множество A объединённо с множеством B: " + setC.ToString()); setC = setA.Intersection(setB); Console.WriteLine("пересечение множества A с множеством B: " + setC.ToString()); setC = setA.Difference(setB); Console.WriteLine("симметрическая разница множества A с множеством B: " + setC.ToString()); setC = setB.Difference(setA); Console.WriteLine("симметрическая разница множества B с множеством A: " + setC.ToString()); if (setB.isSubset(setA)) { Console.WriteLine("множество B является подмножеством множества A !"); } else { Console.WriteLine("множество B не является подмножеством множества A !"); } Console.WriteLine(new string('-', 20)); Console.WriteLine("Сравнение двух множеств..."); if (setA.Equals(setB)) { Console.WriteLine("Множество A равносильно множеству B"); } else { Console.WriteLine("Множество A не равносильно множеству B"); } Console.WriteLine($"\nХэш множества A: {setA.GetHashCode()} \nХэш множества B: {setB.GetHashCode()}"); // Проверка, является ли переменная setA типа CSet Console.WriteLine("\nПроверка, является ли переменная setA типа CSet..."); if (setA is CSet) { Console.WriteLine("Переменная setA имеет тип CSet"); } else { Console.WriteLine("Переменная setA не имеет тип CSet"); } Console.WriteLine(new string('-', 20)); var SET = new CSet("SET", 7); CSet.GetInfo(ref SET); Console.ReadKey(); }