Хелпикс

Главная

Контакты

Случайная статья





Задания для разбора с преподавателем.



 

Лабораторная работа №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;

}

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.