Старые задания по курсу "Платформа .NET"
Содержание
Старые задания
* Старые задания на строки - не выполнять!!!
6.3. Дана строка слов. Убрать лишние пробелы и упорядочить слова по алфавиту. Воспользоваться методом расщепления s.Split(массив разделителей,System.StringSplitOptions.RemoveEmptyEntries) строки на массив строк и методом string.Join(разделитель,ss) слияния массива строк в строку. Аналогично упорядочить слова по длине, записав их в единой строке.
6.4. Используя различные кодировки System.Text.Encoding, преобразовать строку "Спецкурс C# и платформа .NET 2012" в массив байтов. Для этого использовать GetBytes соответствующей кодировки:
System.Text.Encoding.UTF8.GetBytes(s);
Для того чтобы получить список всех поддерживаемых кодировок, воспользуйтесь методом
Encoding.GetEncodings();
возвращающим массив объектов EncodingInfo.
6.5. Вводятся вещественные числа (возможно, на нескольких строках), конец ввода - 0. На одной строке может быть несколько вещественных чисел, а также не числа. Используя метод Append класса StringBuilder, сформировать строку, в которой эти вещественные числа разделены одним пробелом, и количество цифр в дробной части равно 1. Не числа - игнорировать. Для разбора вещественного использовать double.TryParse, для форматирования вещественного - d.ToString (формат вывода для вещественного с 1 цифрой в дробной части)
6.6. Используя объект System.Globalization.DateTimeFormatInfo, переопределить свойство DateSeparator на ';'. Проверить работу нового формата, выведя текущую дату DateTime.Now в новом формате. Используя указанный формат, считать строку, содержащую две даты в указанном формате и найти дни недели, соответствующие этим датам, а также разницу между этими датами в днях, часах и минутах.
6.7. Используя тот факт, что для объекта StringBuilder доступна операция обращения по индексу [] на запись, преобразовать в строке слов первую букву каждого слова в заглавную.
*Задание 6 на строки
- 6.1. Используя System.Globalization.NumberFormatInfo, переопределить разделитель в вещественном числе с запятой на точку (в русских версях windows по умолчанию - запятая). Для этого создать экземпляр NumberFormatInfo и переопределить в нем свойство NumberDecimalSeparator на '.'. Для преобразования вещественного в строку воспользоваться d.ToString(nfi), где nfi - переменная типа NumberFormatInfo. Для считывания вещественного с другим разделителем воспользоваться преобразованием строки в вещественное
double.Parse(s,nfi);
Реализовать на основе этого суммирование всех вещественных, записанных в строке в виде
3.14 2.8 4.19 5.3
и сформировать строку вида
3.14 + 2.8 + 4.19 + 5.3 = ...
Для формирования строки воспользоваться объектом класса StringBuilder, добавляя строку в конец.
- 6.2. Считать содержащиеся в строке шестнадцатеричные числа
AAFF BCDF 1FF4 123D9 CC11D3
и просуммировать их. Результат выдать в восьмеричной системе счисления.
*Задание 8 на регулярные выражения
Теория по регулярным выражениям (Абрамян М.Э.)
Дана строка, состоящая из английских слов, разделенных одним или несколькими пробелами. В начале и в конце строки также могут быть пробелы
8.1. Вывести все слова - каждое на отдельной строке
var r = new Regex(@"\w+");
foreach (Match s in r.Matches(" jh kj hjk k "))
Console.WriteLine(s);
8.2. Вывести все слова, начинающиеся и заканчивающиеся на 'a'
8.3. Вывести все слова, содержащие в начале от 2 до 4 согласных букв
8.4. Вывести все числа с десятичной точкой и вычислить их сумму
8.5. Вывести все полные имена файлов (и только их). Полные имена файлов задаются в формате Диск:\папка1\папка2\имя.расширение. Диск и папки могут отсутствовать.
8.6. Вывести все URL в строке в формате http://edu.mmcs.sfedu.ru/course/view.php?id=9.
8.7. Считать многострочную строку из файла слов (слова могут разделяться одним или несколькими пробелами и символами перехода на новую строку), используя вызов
var s = System.IO.File.ReadAllText('Text.txt');
Создать регулярное выражение с опцией RegexOptions.Multiline.
а) Вывести все слова, стоящие в начале строки.
б) Вывести все слова, стоящие в конце строки.
в) Вывести все слова стоящие первыми в строке (перед словами могут быть один или несколько пробелов)
г) Вывести все строки, начинающиеся с пробела
д) Вывести номера символов, с которых начинается каждая строка
е) Вывести все URL в файле в формате http://edu.mmcs.sfedu.ru/ (последний слеш необязателен) и места их вхождений (строка-столбец). Номер столбца подсчитывать, используя результат предыдущего задания (находить номер, с которого начинается строка, в которой нашли вхождение, после чего находить индекс вхождения в этой строке)