практическая работа. Практическая работа 17 Тема работы Работа с данными типа множество.
Скачать 35.53 Kb.
|
Практическая работа №17 Тема работы:«Работа с данными типа множество.» Цель работы: получение практических навыков работы с правилами объявления и использования переменных типа множество на языке программирования С#; а также с операциями и процедурами при работе с ними. Краткие теоретические сведения Множество (Set) - это совокупность однотипных объектов, рассматриваемая как одно целое. Коллекция, содержащая только отличающиеся элементы, называетсямножеством.Для работы с множествами в библиотеке классов .NET Framework имеется целых два обобщённых класса HashSet Операции над множествами Add - добавление элемента. Если такой элемент уже присутствует, то он не будет добавлен. Remove - удаление элемента из множества. Union - объединение множеств. Создается новое множество, включающее в себя все элементы из множества А и множества В. Если элемент содержится в обоих множествах, он будет добавлен однократно. Разность множеств С помощью метода Except можно получить разность двух множеств: string[] soft = { "Microsoft", "Google", "Apple"}; string[] hard = { "Apple", "IBM", "Samsung"}; // разность множеств var result = soft.Except(hard); foreach (string s in result) Console.WriteLine(s); В данном случае из массива soft убираются все элементы, которые есть в массиве hard. Результатом операции будут два элемента: Microsoft Пересечение множеств Для получения пересечения множеств, то есть общих для обоих наборов элементов, применяется метод: string[] soft = { "Microsoft", "Google", "Apple"}; string[] hard = { "Apple", "IBM", "Samsung"}; // пересечение множеств var result = soft.Intersect(hard); foreach (string s in result) Console.WriteLine(s); Так как оба набора имеют только один общий элемент, то соответственно только он и попадет в результирующую выборку: Apple Объединение множеств Для объединения двух множеств используется метод Union. Его результатом является новый набор, в котором имеются элементы, как из одного, так и из второго множества. Повторяющиеся элементы добавляются в результат только один раз: string[] soft = { "Microsoft", "Google", "Apple"}; string[] hard = { "Apple", "IBM", "Samsung"}; // объединение множеств var result = soft.Union(hard); foreach (string s in result) Console.WriteLine(s); Практическая часть Задание 1. Сформировать множество, содержащее 5 целых чисел из диапазона 1..10 и вывести это множество на экран. Дана строка. Содержит ли она только латинские символы? Дана строка. Содержит ли она и строчные символы? Дана строка. Содержит ли она только русские символы? Дана строка. Содержит ли она и прописные символы? Дана строка. Содержит ли она только арабские цифры? Даны 2 строки. Входят ли все символы одной строки в другую? Дана строка. Содержит ли она символы “№ ! » ; , . % : ? @ # $ ^ & * ( )” ? Разработать программу, какому алфавиту (русскому или латинскому), принадлежит введенный с клавиатуры символ. Даны два множества, состоящие из 10 целых чисел из диапазона 1..100. Из них выделить одно подмножество, делящееся на 2 без остатка, и другое, делящееся на 3 без остатка. Дана строка символов. Требуется построить и вывести множество, элементами которого являются гласные буквы, которые входят в текст. Дана строка символов. Требуется построить и вывести множество, элементами которого являются буквы, входящие в текст не менее двух раз. Дана строка символов. Требуется построить и вывести множество, элементами которого являются встречающиеся в строке знаки арифметических операций и знаки препинания. Контрольные вопросы Как описываются переменные типа множество? Какова максимально допустимая мощность множества? Как осуществляется ввод значений переменных типа множество? Как осуществляется вывод значений переменных типа множество? Какие операции допустимы над переменными типа множество? |