Лабораторная работа № 5

"Строки"

 

Цель: Изучение символьных и строковых переменных и способов их  обработки в языке С++.

 

Постановка задачи

Задана строка, состоящая из символов. Символы объединяются в слова. Слова друг от друга отделяются  одним или несколькими пробелами. В конце текста ставится точка. Текст содержит не  более 255 символов. Выполнить ввод строки, используя функцию gets(s)  и обработку строки в соответствии со своим вариантом.

 

 

 

Варианты

 

1.   Проверить является ли строка палиндромом. (Палиндром - это выражение, которое читается одинакова слева направо и справа налево).

 

2.   Напечатать самое длинное и самое короткое слово в строке.

 

3.   Напечатать все слова, которые не содержат гласных букв (работайте с английским алфавитом).

 

4.   Напечатать все слова, которые содержат по одной цифре.

 

5.   Напечатать все слова, которые совпадают с ее первым словом.

 

6.   Преобразовать строку таким образом, чтобы сначала в ней были напечатаны только буквы, а потом только цифры, не меняя порядка следования символов в строке.

 

7.   Преобразовать строку так, чтобы все буквы в ней были отсортированы по возрастанию (работайте с английским алфавитом).

 

8.   Преобразовать строку так, чтобы все цифры в ней были отсортированы по убыванию.

 

9.   Преобразовать строку так, чтобы все слова в ней стали идентификаторами, слова состоящие только из цифр - удалить.

 

10. Напечатать все слова-палиндромы, которые есть в этой строке(см 1 вариант).

 

11. Преобразовать строку таким образом, чтобы в ее начале были записаны слова, содержащие только цифры, потом слова, содержащие только буквы, а затем слова, которые содержат и буквы и цифры.

 

12. Преобразовать строку таким образом, чтобы все слова в ней были напечатаны наоборот (зеркально).

 

13. Преобразовать строку таким образом, чтобы буквы каждого слова  в ней были отсортированы по возрастанию (работайте с английским алфавитом).

 

14. Преобразовать строку таким образом, чтобы цифры каждого слова  в ней были отсортированы по убыванию.

 

15. Преобразовать строку таким образом, чтобы в ней остались только слова, содержащие буквы и цифры, остальные слова удалить.

 

16. Определить какое слово встречается в строке чаще всего.

 

17. Определить какие слова встречаются в строке по одному разу.

 

18. Все слова строки, которые начинаются с буквы, отсортировать в алфавитном порядке (работайте с английским алфавитом).

 

19. Все слова строки, которые начинаются с цифры отсортировать по убыванию (работайте с английским алфавитом).

 

20. Удалить из строки все слова, которые не являются идентификаторами.

 

21. Определите сколько раз в строке встречается буквы a, b, c.

 

22. Определите частоту встречи символов ЦИФРА в заданной строке.

 

23. Определите сколько раз в заданной строке встречается слово "привет".

 

24. Дано две строки. Получите строку содержащую символы встречаемые в двух заданных строках одновременно.

 

25.  Дано две строки. Получите строку содержащую символы, которые не встречаются в двух заданных строках одновременно.

 

 

 

Методические указания

 

Алгоритм решения задачи сводится рассмотрению строки как массива символов. Просматривая последовательно символы заданной строки или строк необходимо выполнить требуемую задачу.

В случае формирования новой строки не забывайте последним символом в формируемой строке записать символ '\0'.

 

Краткая информация о строках здесь.

 

 

Содержание отчета

1.Постановка задачи для конкретного варианта.

2.Исходные данные.

3.Текст программы.

4.Результаты выполнения программы.