|
|||
Задания для разбора с преподавателем.Стр 1 из 3Следующая ⇒
Лабораторная работа №8. Строки В каждом задании необходимо написать метод, решающий поставленную задачу. Исходные данные передаются в метод в виде одного или нескольких параметров. Данный метод может использовать другие методы (готовые или пользовательские). Если для некоторых исходных данных метод может работать некорректно, то реализовать его в виде булевской функции, которая возвращает true, если решение получено и false в противном случае. Проверить работу метода в тестовой программе. Задания для разбора с преподавателем. 1. Заданную фамилию распечатать по вертикали. Самое простое решение – перебрать все символы строки и вывести построчно: static void Task1(string s) { Console.WriteLine("Вывод фамилии {0} в столбик.", s); for (int i = 0; i < s.Length; i++) Console.WriteLine(" "+s[i]); }
2. Получить строку, состоящую из K заданных символов. Здесь возможны несколько подходов. Самое быстрое – воспользоваться готовым методом: static string Task2A(char ch, int k) { string s = new String(ch,k); return s; //return new String(ch, k); } При этом можно даже обойтись без вспомогательной строки (этот вариант закомментарен). Хотя, собрать строку по символам тоже несложно: static string Task2B(char ch, int k) { string s = ""; for (int i = 0; i < k; i++) s = s + ch; return s; }
3. Дана строка. Первые K её символов переставить в конец строки. Также, как и предыдущую задачу, здесь можно применить или готовые методы, или собрать результат по символам:
static void Task3A(ref string s, int k) { string s1 = s.Substring(0, k); string s2 = s.Remove(0, k); s = s2 + s1; } Здесь s1 – первые К символов исходной строки, а s2 – оставшиеся символы исходной строки.
static string Task3B(string s, int k) { string s1 = ""; for (int i = k; i < s.Length; i++) s1 = s1 + s[i]; for (int i = 0; i < k; i++) s1 = s1 + s[i]; return s1; }
|
|||
|