E.2.3. Строки
1.Дана строка символов. Подсчитать, сколько раз среди символов строки встречается буква х.)
2. Дана строка символов; подсчитать:
а) сколько раз среди данных символов встречается символ + и сколько раз символ *;
б) общее число вхождений символов +, — , * в заданную строку.
3.Дана строка символов; преобразовать ее, заменив:
а) все восклицательные знаки точками ;
б) каждую точку многоточием (т. е. тремя точками);
в) каждую из групп стоящих рядом точек одной точкой;
г) каждую из групп стоящих рядом точек многоточием (т. е. тремя точками).
4.Дана строка символов . Выяснить, имеются ли в последовательности такие члены последовательности , , что - это запятая, а - тире.
5. Дана строка символов . Получить первое натуральное i , для которого каждый из символов и совпадает с буквой а. Если такой пары символов в последовательности нет, то ответом должно быть число 0.
6. Дана строка символов . Известно, что среди есть по крайней мере одна запятая. Найти такое натуральное i, что:
а) - первая по порядку запятая;
б) - последняя по порядку запятая.
7. Дана строка символов . Известно, что символ отличен от восклицательного знака и что среди есть по крайней мере один восклицательный знак. Пусть - символы данной последовательности, предшествующие первому восклицательному знаку ( n заранее неизвестно).
а) Определить количество пробелов среди .
б) Выяснить, входит ли в последовательность буква ю.
в) Выяснить, верно ли, что среди имеются все буквы, входящие в слово шина.
г) Выяснить, имеется ли среди пара соседствующих букв но или он.
д) Выяснить, имеется ли среди пара соседствующих одинаковых символов.
е) Выяснить, верно ли, что существуют такие натуральные i и j, что 1<i<j<n и совпадает с , а - с .
8. Дана строка символов. Удалить из данной последовательности все группы букв abcd.
9. Дана строка символов. Преобразовать ее, удалив каждый символ * и повторив каждый символ, отличный от *.
10.Дана строка символов, среди которых есть двоеточие.
а) Получить все символы, расположенные до первого двоеточия включительно.
б) Получить все символы, расположенные после первого двоеточия.
в) Получить все символы, расположенные между первым и вторым двоеточием. Если первого двоеточия нет, то получить все символы, расположенные после единственного имеющегося двоеточия.
11.Дана строка символов.
а) Подсчитать наибольшее количество идущих подряд пробелов.
б) Выяснить, верно ли, что в последовательности имеется пять идущих подряд букв е.
12.Дана строка символов. Определить число вхождений в нее группы букв:
а) abc; | б) aba. |
13.Дана строка символов. Заменить в ней каждую группу букв childгруппой букв children .
14.Дана строка символов. Исключить из нее группы символов, расположенные между скобками (, ). Сами скобки тоже должны быть исключены. Предполагается, что внутри каждой пары скобок нет других скобок.
15.Дана строка символов. Преобразовать ее следующим образом: если нет символа *, то оставить строку без изменения, иначе заменить каждый символ, встречающийся после первого вхождения символа *, на символ — .
16. Дана строка символов, среди которых есть хотя бы одна точка. Преобразовать ее, удалив все запятые, предшествующие первой точке, и заменив знаком + все цифры 3, встречающиеся после первой точки.
17. Дана строка символов (n>1).Преобразовать последовательность , заменив запятыми все двоеточия, встречающиеся среди , и заменив точками все восклицательные знаки, встречающиеся среди .
18. Дана строка символов . Известно, что среди данных символов есть хотя бы один, отличный от пробела. Требуется преобразовать последовательность следующим образом. Удалить группы пробелов, которыми начинается и которыми заканчивается последовательность, а также заменить каждую внутреннюю группу пробелов одним пробелом. Если указанных групп нет в данной последовательности, то оставить последовательность без изменения.
19. Дана строка символов. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами.
а) Подсчитать количество слов в данной последовательности.
б) Подсчитать количество букв а в последнем слове данной последовательности.
в) Найти количество слов, начинающихся с буквы б.
г) Найти количество слов, у которых первый и последний символы совпадают между собой.
д) Найти какое-нибудь слово, начинающееся с буквы а.
е) Преобразовать данную последовательность, заменяя всякое вхождение слова этона то.
ж) Найти длину самого короткого слова.
20. Дана строка символов Известно, что символ отличен от пробела и что среди имеется хотя бы один пробел. Рассматриваются - символы, предшествующие первому пробелу (n заранее не известно). Преобразовать последовательность :
а) удалив из нее все символы, не являющиеся буквами;
б) заменив все малые буквы одноименными большими;
в) удалив все символы, не являющиеся буквами или цифрами, и заменив каждую большую букву одноименной малой;
г) удалив из каждой группы идущих подряд цифр, в которой более двух цифр и которой предшествует точка, все цифры, начиная с третьей (например, аb+0.1973-1.1 преобразуется в аb+0.19-1.1);
д) удалив из каждой группы цифр, которой не предшествует точка, все начальные нули (кроме последнего, если за ним идет точка).
21. Дана строка символов . Оставить последовательность без изменения, если в нее не входит символ *, иначе каждый символ /, предшествующий первому вхождению символа *:
а) заменить на запятую | б) удалить из последовательности. |
22.Дана строка символов . Если последовательность является палиндромом, т.е. s1=sn, s2=sn-1 то оставить ее без изменения, иначе получить последовательность s1, s2, ..., sn-1, sn, sn-1, ..., s2, s1.
23. Дана строка символов . Если последовательность такова, что s1=s34, s2=s35, ... ,s33=s66, то оставить ее без изменения, иначе получить последовательность s1, s2, ..., s66, s1, s2, ..., s66 .
24.Дана строка символов . Определить количество неверных равенств среди:
а) s1=s41, s2=s42, ... , s40=s80; | б) s1=s80, s2=s79, ... , s40=s41. |
25. Дана строка символов. Будем рассматривать слова, образованные символами, входящими в последовательность s1, ... , sn , считая при этом, что количество символов в каждом слове не превосходит 15.
а) Найти какое-нибудь слово, оканчивающееся буквой д (если таких слов нет, то сообщить об этом).
б) Найти какое-нибудь слово, начинающееся буквой аи оканчивающееся буквой я(если таких слов нет, то сообщить об этом).
в) Удалить из s1, ... , sn все слова с нечетными порядковыми номерами и перевернуть все слова с четными номерами. Например, если n=21 и данная последовательность символов представляет собой последовательность
во_что_бы_то_ни_стало,
то должна получиться последовательность
отч_от_олатс.
г) Удалить из s1, ... , sn все слова, в которых встречается не более двух различных букв.
д) Удалить из s1, ... , sn все слова, оканчивающиеся группой букв кая или кое.
Дата добавления: 2014-12-24; просмотров: 4047;