Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРАКТИЧ. РАБОТЫ.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.49 Mб
Скачать

Практическая работа № 4

Тема: «Строковый тип данных».

Цель: рассмотреть методы работы со строками, научиться разбивать строку на слова, научиться работать с массивом массивов.

Ход работы:

Используя методические пособия еще раз рассмотрите темы: «Строковый тип данных string (класс String.».

Рассмотрите примеры выполнения практической работы и выполните задания, соответствующие Вашему варианту.

Пример выполнения практической работы:

I. Разработать программу, которая в заданную строку s вставляет символ x после каждого вхождения символа y.

static void Main()

{

Console.WriteLine("Введите строку: "); string a = Console.ReadLine();

Console.WriteLine("Введите символ x: "); char x=char.Parse(Console.ReadLine());

Console.WriteLine("Введите символ y: "); char y=char.Parse(Console.ReadLine());

for (int i=0; i<a.Length; i++)

if (a[i]==x) {a.Insert(i+1,y); i++;}

Console.WriteLine("Измененная строка: "+a);

}

II. Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания. Вывести только те слова сообщения, в которых содержится заданная подстрока.

static void Main()

{

Console.WriteLine("Введите строку: "); string a = Console.ReadLine();

Console.WriteLine("Введите заданныe подстроку: "); string x=Console.ReadLine();

for (int i=0; i<a.Length;)

if (char.IsPunctuation(a[i])) a.Remove(i,1);

else i++;

string str=a.ToString(); str=str.Trim();

string []s=str.Split(' ');

Console.WriteLine("Искомые слова: ");

for (int i=0; i<s.Length; ++i) if (s[i].IndexOf(x)!=-1) Console.WriteLine(s[i]);

}

Варианты заданий:

I. Разработать программу, которая для заданной строки s:

  1. определяет, какой из двух заданных символов встречается чаще в строке;

  2. определяет, имеются ли в строке два соседствующих одинаковых символа;

  3. удаляет среднюю букву, если длина строки нечетная, и две средних, если длина строки четная;

  4. удваивает каждое вхождение заданного символа x;

  5. удаляет все подстроки substr;

  6. подсчитывает сумму всех содержащихся в ней цифр;

  7. подсчитывает количество содержащихся в ней цифр;

  8. находит порядковые номера первого и последнего вхождения символа x;

  9. выводит на экран последовательность символов, расположенных до первого двоеточия;

  10. выводит на экран последовательность символов, расположенных после последнего двоеточия;

  11. удаляет из нее последовательность символов, расположенных между круглыми скобками;

  12. удаляет из нее последовательность символов, расположенных между двумя запятыми;

  13. определяет, сколько различных символов встречается в строке.

II. Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания.

  1. Вывести только те слова сообщения, которые содержат не более чем n букв.

  2. Вывести только те слова сообщения, которые начинаются с прописной буквы.

  3. Вывести только те слова сообщения, которые содержат хотя бы одну цифру.

  4. Удалить из сообщения все слова, которые заканчиваются на заданный символ.

  5. Удалить из сообщения все повторяющиеся слова (без учета регистра).

  6. Подсчитать сколько раз заданное слово встречается в сообщении.

  7. Подсчитать сколько слов, состоящих только из прописных букв, содержится в сообщении.

  8. Найти самое длинное слово сообщения.

  9. Найти все самые длинные слова сообщения.

  10. Найти самое короткое слово сообщения.

  11. Найти все самые короткие слова сообщения.

  12. Вывести слова сообщения в алфавитном порядке.

  13. Вывести слова сообщения в порядке возрастания их длин.