Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания_ЛР7(1и2)_11.doc
Скачиваний:
1
Добавлен:
13.07.2019
Размер:
73.73 Кб
Скачать

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

1. Для контроля смежных символов нужно выделить переменные по количеству символов и в конце цикла обработки последовательности выполнять «смещение» группы на символ вперёд по последовательности.

Например, мы следим за тремя смежными символами (“…dfgrretyww…”). Выделяем три переменные c (‘t’), c1 (‘e’), c2 (‘r’). В конце цикла: с2 = с1; с1 = с; , а в с будем вводить новый символ ‘у’. Новая группа смежных символов: c (‘у’), c1 (‘t’), c2 (‘e’).

2. Для контроля за каким-либо прошлым событием можно пользоваться флагами 0 | 1 – было (1) или не было (0) это событие. Например, если нужно помнить, что слово начинается с прописной буквы, установим флаг:

if( c1 == ‘ ‘ && c >= ‘A’ && c <= ‘Z’) flag = 1;

Помните и о необходимости сброса флага (в каком месте программы и по какому условию).

Задания к работе 7. “обработка последовательности символов”

Уровень 2

Внимание! Если это задание вам «не по плечу», то выполняйте задание уровня 1 вашего варианта.

5. *Дана последовательность букв и символов. Определить кол-во троек - смежных букв (a..z), которые располагаются по алфавиту (…adk…, …knp…).

10. *Определить число слов, в которых 1-я буква есть заданная буква с1, a 2-я – первая по алфавиту буква из первого слова.

11. *Определить номер символа, начиная с которого К или более символов расположены по алфавиту.

13. *В последовательности символов найти max длину цепочки символов, расположенных в алфавитном порядке.

18. *Зашифровать в последовательности символов те слова, которые начинаются с заглавной буквы. Правило шифрования: вместо гласной букв от записывать следующую по алфавиту букву, а вместо – предыдущую букву.

21. *Разбить исходный текст без переноса слов на строки длиной не менее 15 символов.

22. *Слова в строке разделены одним или несколькими пробелами. Вывести строку на экран, объединив слова длиной < К со следующим словом.

53. *Определить (по количеству гласных), сколько слов в тексте содержит 1 слог и сколько 2 слога.

57. *Удалить в выражениях из каждой группы идущих подряд цифр все цифры, начиная с третьей (например, АБ + 0.2722 - 2.1 преобразуется в АВ + 0.27 - 2.1).

60. *Найти в тексте наибольшее количество цифр, идущих подряд.

63. *Найти в строке номера слов, в которые заданная буква входит не менее К раз и не является первой.

64. *Определить номера слов, которые длиной не менее М и которые содержат хотя бы одну из букв 'k..s'.

68. *В строке символов найти длину наименьшей цепочки, в которую не входят знаки '+' или '-'.

69. **Из строки удалить все пары заданных символов, если после этой пары символ – не буква и в предыдущем слове скобок не было.

70. *Вывести на экран последнюю букву первых К слов, в которых есть заданная буква С и нет букв из диапазона с1..с2.

ХХ. *Из строки удалить скобки ( ), если в них символ – буква a’…’z’, букву оставить.

ХХ. *В строке слова разделены пробелом. Вывести на экран те слова, перед которыми было слово с одинаковыми первой и последней буквами (В) в виде таблицы: <буква В> <слово>.

ХХ. *Определить самое длинное слово, которое начинается с заданных букв a или b.

ХХ. Задан список группы из К студентов и пять оценок каждого, например: 5 4 4 3 5. Напечатать список группы и средний балл каждого студента: ИВАНОВ 4.2 … …

ХХ. *Найти в строке номера двух слов, с наибольшим числом заданных символов А и В. Поиск выполнять по общему количеству символов А и В.

ХХ. *Определить, первое или последнее слово в строке содержит больше гласных букв.