# Работа со строковыми переменными. ## Напоминаю теорию Строка, как и всё в c#, является объектом и у неё есть методы (более полный список можно посмотреть в [лекции](./articles/4_prog_string.md) или интернете): * **Length** - длина строки ```cs Console.WriteLine( "Длина строки - {0}", Stroka.Length); ``` * **Contains** - строка содержит подстроку ```cs if(SomeString.Contains(SubString)){ ... } ``` * **StartsWith**, **EndsWith** - строка начинается/заканчивается подстрокой * **IndexOf** - возвращает позицию подстроки в строке (Если искомый символ или подстрока не обнаружены, то возвращается значение -1) * **Split** - разделяет строку на массив строк. В примере ниже строка чисел разделенных пробелом преобразуется массив. Этим методом удобно разбирать параметры полученные методом `Console.ReadLine();`. ```cs var StringList = "1 2 3 4 5".Split([' ']); ``` * **ToUpper()**, **ToLower()** - смена регистра * **Substring()** - Получение подстроки из строки Элемент строки (символ) можно получить по индексу (в этом смысле строка является одномерным массивом): ```cs var Stroka = "ABCDEF"; for(int i=0;i’, ‘<’ и ‘-‘. Требуется найти количество стрел, которые спрятаны в этой последовательности. Стрелы – это подстроки вида ‘>>-->’ и ‘<--<<’ (наконечник стрелы, древко и оперение). 1. Нумеролог Чтобы предсказать судьбу человека, нумеролог берет время жизни человека в секундах, затем складывает все цифры этого числа. Если полученное число состоит более чем из одной цифры, операция повторяется, пока в числе не останется одна цифра. Затем по полученной цифре и числу операций, необходимых для преобразования числа в цифру нумеролог предсказывает судьбу человека. Нумеролог плохо умеет считать, а числа, с которыми он работает, могут быть очень большими. Напишите программу, которая бы делала все расчеты за него. 1. Перестановка Если Вы читали Гарри Поттера, то знаете, что повелитель зла, Лорд Волдеморт создал свое имя путем перестановки букв в своем настоящем имени. Так из имени «Tom Marvolo Riddle» он получил «I am Lord Voldemort». Напишите программу, которая проверяет, можно ли получить из одного имени другое путем перестановки его букв. При этом регистром букв нужно пренебречь. На входе два слова (можно в разных строках, а можно вспомнить про метод Split)