ВНИМАНИЕДля получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru

Цель лабораторной работы

Разработка программ на языке С++ для обработки строк.

Задание №1 («Найти и заменить»)

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

➡ В задании можно заменить русские слова на английские или сделать транслитерацию русских слов

Условие
1Пользователь вводит текст. Вычислить количество слов начинающихся на $<м>$. Количество слов $<Компьютер>$ или $<компьютер>$, а также количество предложений.
2
Пользователь вводит текст. Заменить в тексте слова $<ПК>$ на $<компьютер>$, подсчитав их количество.
3
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<Иванов\ И.И.>$ на $<Сидоров\ А.А.>$. Заменить круглые скобки на фигурные, подсчитав их количество.
4
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<Pascal>$ на $<C++>$, подсчитав их количество. Вычислить количество слов $<компьютер>$.
5
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<плохо>$ на $<хорошо>$. Вычислить количество всех слов.
6
Пользователь вводит текст. Вычислить количество слов начинающихся на $<A>$. Количество слов $<мало>$ или $<Мало>$. Заменить в тексте слова $<доллар>$ на $<рубль>$.
7
Пользователь вводит текст. Заменить в тексте слова $<Максимальный>$ на $<Наибольший>$. Удалить все слова $<Иванов\ И.И.>$. Вычислить количество предложений.
8
Пользователь вводит текст. Заменить в тексте слова $<кризис>$ на $<проблема>$, подсчитав их количество. Удалить все слова $<компьютер>$.
9
Пользователь вводит текст. Вывести исходный текст, заменив в нем квадратные скобки на круглые. Вычислить количество всех слов и количество появления слова $<обучаемый>$.
10
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<проблема>$ на $<задача>$. Удалить все слова $<Иванов\ И.И.>$.
11
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<три>$ на $<удовлетворительно>$. Вычислить количество слов начинающихся на $<к>$.
12
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<дублирование>$ на $<копирование>$. Вычислить количество всех слов.
13
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<четыре>$ на $<хорошо>$. Вычислить количество всех слов и предложений. Заменить все скобки на пробелы.
14
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<Pascal>$ на $<C++>$. Удалить символы $<*>$. Заменить все цифры на пробелы.
15
Пользователь вводит текст. Вывести исходный текст, заменив в нем слово $<дублирование>$ на $<копирование>$. Вычислить количество всех слов.

Образец выполнения (вариант №8)

Условие задачи

Пользователь вводит текст. Заменить в тексте слова «krizis» на «problema«, подсчитав их количество. Удалить все слова «komputer«.

💡 Вместо русских слов будет использована транслитерация

Реализация задачи на языке С++

Результаты работы программы

Лабораторная работа №4. Задание №1. Вариант №8. Замена слова и удаление заданного слова

ВНИМАНИЕДля получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru

Задание №2 («Исправление ошибок в тексте»)

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

➡ В программах не использовать find

Условие
1Исходный текст набран с ошибками: иногда отсутствуют пробелы после точек. Вставить $1$ пробел после каждой точки, если он отсутствует перед следующим предложением. А также вычислить количество слов и предложений.
2
Исходный текст набран с ошибками. Вывести исходный текст, заменив в нем строчные (малые) буквы, следующие за точкой и произвольным количеством пробелов на прописные (большие) буквы. В исходном тексте может быть много предложений и точек. А также вычислить количество слов и предложений.
3
В тексте заменить цифры на их словесные названия (использовать Case).
4
Исходный текст набран с ошибками: между некоторыми словами по несколько пробелов. Заменить в тексте подряд идущие пробелы одним пробелом.
5
В тексте заменить символы арифметических операций ($+\ -\ *\ /$) на их словесные названия (использовать Case).
6
Исходный текст набран с ошибками: после слова может находиться один или более пробелов перед точкой (или нет). Вывести исходный текст, убрав в нем эти пробелы перед точкой (между словом и точкой). В исходном тексте может быть много предложений и точек. А также удалить символы $\#$.
7
Исходный текст набран с ошибками. Вывести исходный текст, заменив в нем строчные (малые) буквы, следующие за точкой и одним пробелом на прописные (большие) буквы. В исходном тексте может быть много предложений и точек. Вычислить количество слов, начинающихся на букву $<A>$.
8
Пользователь вводит текст на русском языке. Вывести исходный текст, заменив в нем все заглавные буквы (прописные/большие) буквы на строчные (малые). Вычислить количество слов, а также количество предложений. А также удалить символы $@$.
9
Исходный текст набран с ошибками: выражения, заключенные в скобки имеют один пробел вначале и в конце. Вывести исходный текст, убрав в нем пробелы после открывающейся скобки, а также перед закрывающейся скобкой. В исходном тексте может быть много выражений, заключенных в скобки.
10
Исходный текст набран с ошибками. Вывести исходный текст, заменив в нем строчные (малые) буквы, следующие за точкой и произвольным количеством пробелов на прописные (большие) буквы. В исходном тексте может быть много предложений и точек. А также вычислить количество слов «ПК».
11
Исходный текст набран с ошибками: после слова может находиться один или более пробелов перед запятой (или нет). Вывести исходный текст, убрав в нем пробелы перед запятой (между словом и запятой). В исходном тексте может быть много предложений и запятых. А также удалить символы $-$.
12
Исходный текст набран с ошибками: Выражения, заключенные в скобки имеют один или более пробелов вначале и в конце (или нет). Вывести исходный текст, убрав в нем пробелы после открывающейся скобки, а также перед закрывающейся скобкой . В исходном тексте может быть много выражений заключенных в скобки.
13
Исходный текст набран с ошибками: после слова может находиться один пробел перед запятой или нет. Убрать в тексте эти пробелы перед запятой (между словом и запятой). В исходном тексте может быть много предложений и запятых. А также удалить символы $\$$.
14
Исходный текст набран с ошибками: некоторые слова по ошибке начинаются не с одной первой заглавной буквы, а с двух заглавных букв. Исправить текст.
15
Исходный текст набран с ошибками: иногда отсутствуют пробелы после запятых. Вставить $1$ пробел после каждой запятой, если он отсутствует перед следующим словом. А также вычислить количество слов «Информатика».
16
Исходный текст набран с ошибками: иногда отсутствуют пробелы после точек. Вставить $1$ пробел после каждой точки, если он отсутствует перед следующим предложением. а также вычислить количество  предложений. А также удалить квадратные скобки.

Образец выполнения (вариант №5)

Условие задачи

В тексте заменить символы арифметических операций ($+\ -\ *\ /$) на их словесные названия (использовать Case).

Реализация задачи на языке С++

Результаты работы программы

Лабораторная работа №4. Задание №2. Вариант №5. Заменить знаки арифметических операций на их словесные названия

ВНИМАНИЕДля получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru

Задание №3 («Сортировка строк»)

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

Условие
1Дана строка текста. Упорядочить по возрастанию символы, расположенные между первым элементом равным $?$ и последним элементом равным $!$. Предварительно найти, где они находятся.
2
Дана строка текста. Известно, что в ней есть один символ $\&$, найти где он находится и отсортировать по возрастанию символы в строке, расположенные за ним.
3
Дана строка текста. Известно, что в ней есть один элемент равный $<a>$, найти где он находится и упорядочить по алфавиту элементы, расположенные за этим элементом $<a>$.
4
Дана строка текста. Известно, что в ней есть один символ $*$, найти где он находится и отсортировать по возрастанию элементы массива, расположенные перед ним.
5
Дана строка текста. Найти позицию, где находиться последняя точка. Упорядочить по возрастанию символы массива расположенные перед этой точкой.
6
Дана строка текста. Отсортировать последние 7 символов в строке по алфавиту (или по таблице ASCII).
7
Дана строка текста (цифры и буквы). Известно, что в ней есть единственная цифра. Найти номер позиции, где находится цифра. Далее отсортировать буквы по алфавиту, которые расположены после этой цифры.
8
Дана строка текста. Известно, что в ней есть цифры и буквы. Переписать в другую строку только цифры и затем отсортировать ее по возрастанию.
9
Дана строка текста. Известно, что в ней есть один элемент равный $*$ и один элемент равный $\#$. Найти где они находятся, и упорядочить по алфавиту символы, расположенные между ними.
10
Дана строка текста. Известно, что в строке есть только две точки. Найти их порядковые номера. Далее упорядочить по возрастанию символы, расположенные между ними.
11
Дана строка текста. Найти номер первого элемента равного $+$. Упорядочить по убыванию элементы массива расположенные за этим элементом.
12
Дана строка текста. Отсортировать символы по алфавиту с $4$ позиции по $15$ позицию в строке.
13
Дана строка текста. Известно, что в ней есть только буквы (прописные и срочные). Переписать во вторую строку только заглавные (прописные) буквы, и затем отсортировать их по алфавиту.
14
Даны две строки текста. Объединить их, записав обе строки в третью строку (неважно в каком порядке). Затем отсортировать третью строку по алфавиту (или по таблице ASCII).
15
Дана строка текста. Отсортировать первые $7$ символов в строке по алфавиту (или по таблице ASCII).

Образец выполнения (вариант №1)

Условие задачи

Дана строка текста. Упорядочить по возрастанию символы, расположенные между первым элементом равным $?$ и последним элементом равным $!$. Предварительно найти, где они находятся.

Реализация задачи на языке С++

Результаты работы программы

Лабораторная работа №4. Задание №3. Вариант №1. Сортировка символов внутри строки

ВНИМАНИЕДля получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru

Задание №4 («Сравнение строк»)

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

Условие
1Даны две строки текста. Определить сколько раз встречается каждый символ первой строки во второй строке. Например: Пусть исходная строка Str1 := “xyz”; Str2: “x a d c x y x w” . Тогда “х” встречается 3 раза y встречается 1 раз, “z встречается 0 раз.
2
Определить, можно ли путем перестановок символов в строке S1 получить строку S2. Считать, что обе строки одной длинны. Далее удалить все слова «неудача».
3
Дана строка текста. Определить сколько раз встречается каждый символ в строке. Например: Пусть исходная строка Str: “xwxyxw” . Тогда “х” встречается 3 раза “y встречается 1 раз, “w встречается 2 разa. Далее удалить все слова «проблема».
4
Даны две строки текста. Определить сколько раз встречается каждый символ первой строки во второй строке. Например: Str1 : “xyz”; Str2: “x a d c x y x w” . Тогда “х” встречается 3 раза “y встречается 1 раз, “zвстречается 0 раз. Далее заменить все слова «компьютер» на слова «ПК» .
5
Определить, можно ли путем перестановок символов в строке S1 получить строку S2. Считать, что обе строки одной длинны. Далее вычислить количество пробелов во второй строке. Далее заменить все слова «уникальный» на слова «единственный» .
6
Даны две строки текста. Определить встречается ли хотя бы один раз каждый из символов первой строки во второй строке. Например: Пусть исходная строка Str1 : “xyz”; Str2: “x a d c x y xw” . Тогда “х” встречается 3 раза “y встречается 1 раз,z встречается 0 раз. Не каждый символ встречается , например “z” не встречается ни разу.
7
Дана строка текста. Определить сколько раз встречается каждый символ в строке. Например: Пусть исходная строка Str: “x w x y x w” . Тогда “х” встречается 3 раза y встречается 1 раз, “w встречается 2 разa. Далее вычислить количество пробелов в строке.
8
Определить, можно ли путем перестановок символов в строке S1 получить строку S2. Считать, что обе строки одной длинны. Далее вычислить количество пробелов во второй строке.
9
Дана строка текста. Определить сколько раз встречается каждый символ в строке. Например: Пусть исходная строка Str: “x w x y x w” . Тогда “х” встречается 3 раза “y встречается 1 раз, “w встречается 2 разa.
10
Определить, можно ли путем перестановок символов в строке S1 получить строку S2. Считать, что обе строки одной длины.
11
Даны две строки текста. Определить встречается ли хотя бы один раз каждый из символов первой строки во второй строке. Например: Пусть исходная строка Str1 : “xyz”; Str2: “x a d c x y xw” . Тогда “х” встречается 3 раза “y встречается 1 раз,z встречается 0 раз. Не каждый символ встречается, например,z” не встречается ни разу. Далее вычислить количество символов «а» в первой строке.
12
Даны две строки текста. Определить сколько раз встречается каждый символ первой строки во второй строке. Например: Пусть исходная строка Str1 : “xyz”; Str2: “x a d c x y x w” . Тогда “х” встречается 3 раза “y встречается 1 раз, “z встречается 0 раз . Далее удалить все слова «кризис».
13
Даны две строки текста. Определить встречается ли хотя бы один раз каждый из символов первой строки во второй строке. Например: Пусть исходная строка Str1 : “xyz”; Str2: “x a d c x y xw” . Тогда “х” встречается 3 раза “y встречается 1 раз,z встречается 0 раз. Не каждый символ встречается , например “z” не встречается ни разу. Далее удалить все слова «разрушение» в первой строке.
14
Даны две строки текста. Определить сколько раз встречается каждый символ первой строки во второй строке. Например: Пусть исходная строка Str1 : “xyz”; Str2: “x a d c x y x w” . Тогда “х” встречается 3 разаyвстречается 1 раз, “z встречается 0 раз. Далее вычислить количество пробелов во второй строке.
15
Дана строка текста. Определить сколько раз встречается каждый символ в строке. Например: Str: “xwxyxw” . Тогда “х” встречается 3 раза “y встречается 1 раз, “w встречается 2 разa. Далее заменить все слова «уникальный» на слова «единственный» .
16
Даны две строки текста. Определить встречается ли хотя бы один раз каждый из символов первой строки во второй строке. Например: Пусть исходная строка Str1 : “xyz”; Str2: “x a d c x y xw” . Тогда “х” встречается 3 раза “y встречается 1 раз,z встречается 0 раз. Не каждый символ встречается , например “z” не встречается ни разу. Далее заменить все слова «компьютер» на слова «ПК» .

Образец выполнения (вариант №10)

Условие задачи

Определить, можно ли путем перестановок символов в строке S1 получить строку S2. Считать, что обе строки одной длины.

Реализация задачи на языке С++

Результаты работы программы

Лабораторная работа №4. Задание №4. Вариант №10. Можно ли переставляя символы строки S1, получить строку S2

ВНИМАНИЕДля получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru