Хелпикс

Главная

Контакты

Случайная статья





Лабораторная работа №7. Тема: Решение задач обработки текстовой информации. Варианты заданий



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

Тема: Решение задач обработки текстовой информации

 

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

Задание: Согласно заданному варианту разработать алгоритм, выполняющий обработку символьной информации и запрограммировать его на языке С.

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

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

2. Метод решения задачи (словесное, графическое описание, математическая модель).

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

4. Листинг программы на языке С.

5. Тестовые примеры.

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

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

2. Задан основной список из N фамилий (разделители: запятая, пробел), в конце списка точка. Во втором списке М фамилий (М<=N). Проверить, нет ли во втором списке фамилий, не содержащихся в основном списке и выдать соответствующий список.

3. Исходный текст на английском языке записан в нескольких строчках одинаковой длины (возможны переносы). Заменить все встречающиеся окончания ING на ED и уплотнить текст.

4. Поиск по шаблону: определить номер позиции в исходной строке, начиная с которой в строке содержится шаблон S1*S2, где S1, S2-заданные подстрочники; *-произвольная последователь­ность символов.

5. Получить символьную запись целого числа по его значению (например: 25-двадцать пять).

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

7. Задан список из N человек в форме: Фамилия Имя Отчество. Выдать этот список в форме: Фамилия И.О.

8. В строке длиной М разместить посередине заголовок, который записан в строке длиной N (M>=N). В строке N возможно присутствие правого и левого поля из незначащих пробелов.

9. Определить частоту появления гласных букв русского алфавита в произвольном тексте. Конец текста - символ *.

10. В арифметическом выражении проверить согласованность скобок, правильность их расположения и выдать соответствующие сообщения.

11. В строке записаны словами оценки по экзаменам (слова разделены пробелами), в конце строки точка. Проверить синтакси­ческую правильность записи (написание слов и разделителей). При корректной записи, посчитать сумму набранных баллов и средний балл.

12. По тексту телеграммы определить сумму оплаты. Слова в телеграмме разделены пробелами, конец текста - символ "=". Стоимость одного слова и комиссионный сбор - заданы. Учитывать, что телеграммы могут быть разного типа (срочные, поздравительные и т.д.).

13. Задан список из N строк. Каждая строка содержит Ф.И.О. абитуриента и средний балл вступительных экзаменов. Составить списки трех групп, равно­мерно распределив студентов по успеваемости в каждую из групп.

14. В тексте, состоящем из слов, разделенных одним пробелом, найти слово максимальной длины и среднюю длину слов. Текст заканчивается символом "/".

15. Дан набор слов, разделенных точкой с запятой (;). Набор заканчивается символом "/". Определить, сколько в нем слов, заканчивающихся буквой а.

16. Дана строка. Указать слова, которые содержат хотя бы одну букву к.

17. Дана строка. Найти в ней те слова, которые начинаются и оканчиваются одной и той же буквой.

18. В записке слова зашифрованы - каждое из них записано наоборот. Расшифровать сообщение.

19. Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, в том порядке, в котором они встречаются в тексте.

20. Из заданной символьной строки выбрать те символы, которые встречаются в ней более одного раза, в порядке, обратном тому, в котором они встречаются в тексте.

21. Дана строка, содержащая произвольный текст. Выяснить, чего в нем больше: русских букв или цифр.

22. Дана строка, содержащая текст на русском языке. В предложении некоторые слова записаны подряд несколько раз. Заканчивается предложение символом "/". Получить в новой строке отредактированный текст, в котором удалены подряд идущие вхождения слов в предложениях.

23. Дана строка. Напечатать в алфавитном порядке все слова из данной строки, имеющие заданную длину n.

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

25. Дан текст. Определить, является ли он правильным(!) арифметическим выражением без скобок (допустимые операции +, -, *, /, в качестве аргументов могут выступать целые и вещественные числа).

26. Напечатать в алфавитном порядке слова исходного текста, исключив повторяющиеся слова. Разделители между словами - один или несколько пробелов.

27. Дана строка. Напечатать те слова, которые отличаются только порядком следования букв.

28. Дан текст, состоящий из латинских букв. Напечатать те слова, в которых буквы упорядочены по алфавиту.

29. Дан текст, состоящий из латинских букв. Напечатать те слова, в которых нет повторяющихся букв.

30. Дан текст, состоящий из русских букв. Напечатать те слова, в которых буквы упорядочены по алфавиту.

31. Дан текст. Преобразовать его по следующему правилу: перенести первую букву каждого слова в конец слова.

32. Дан текст. Преобразовать его по следующему правилу: удалить из каждого слова все последующие вхождения первой буквы.

33. Дан текст. Удалить из каждого слова нечетной длины среднюю букву.

34. Дан текст, состоящий из латинских букв. Напечатать те слова, в которых гласные буквы чередуются с согласными.

35. Дан текст, состоящий из латинских букв. Напечатать все различные слова, указав для каждого из них число вхождений в текст.

36. Дан текст, состоящий из латинских букв. Составить текст, содержащий только последние буквы всех слов. Результирующий текст упорядочить по алфавиту. На экран вывести оба текста.

37. Проверить, содержит ли исходный текст хотя бы одно слово-палиндром, и вывести эти слова на экран.

38. Даны две строки. Определить сколько раз во вторую строку входят буквы первой строки (в первой строке буквы не повторяются!).

39. Дан текст из английских слов и римских чисел. Напечатать отдельно каждую группу, не меняя порядок слов в группе.

40. В строке записаны через пробелы положительные вещественные числа. Записать в результирующую строку числа, упорядоченные по возрастанию.

41. Дана строка. Поменять местами четные и нечетные слова строки.

 

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.