Задания для подготовки к работе
1. Изучить строковый тип, организацию работы со строками в стандартном Паскале и Турбо Паскале.
2. Разработать алгоритм и составить программу для решения задачи соответствующего варианта таким образом, чтобы решение каждой подзадачи описывалось подпрограммой. Библиотечные функции для работы со строками не использовать. Если не указано иначе, словом считать последовательность символов, не содержащую пустых символов (символов с кодами меньшими 33), буквами считать буквы латинского алфавита.
3. Подобрать наборы тестовых данных.
Варианты заданий
1. Даны две строки s1 и s2. Пусть w – первое из слов строки s1, которое есть и в строке s2. Найти слово, предшествующее первому вхождению w в s1.
2. Даны две строки. Получить строку, в которой чередуются слова первой и второй строки. Если в одной из строк число слов больше, чем в другой, то оставшиеся слова этой строки должны быть дописаны в строку-результат.
3. Даны две строки. Пусть n1 – число слов в первой строке, а n2 – во второй (n1< n2). Добавить в конец первой строки, последние n2-n1 слов второй строки.
4. Удалить из данной строки слова, содержащие заданную последовательность символов.
5. В данной строке соседние слова разделены запятыми. Определить количество слов-палиндромов, которые начинаются с буквы а”.
6. Преобразовать строку, заменяя каждое слово "this" словом "the"”.
7. Определить, упорядочены ли лексикографически слова данного предложения.
8. Вывести слова данного предложения, которые отличны от последнего слова.
9. Преобразовать строку таким образом, чтобы после каждого заданного символа sym1 был вставлен символ sym2, если sym2 не следует за sym1 в исходной строке.
10. Определить, входит ли в данную строку каждая буква данного слова.
11. Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в начало слова и изменить порядок следования цифр в слове на обратный.
12. Преобразовать строку, заменяя каждую цифру соответствующим ей числом пробелов.
13. Определить, есть ли в данной строке одинаковые слова.
14. Даны две строки. Определить последнее из слов первой строки, которое есть во второй строке.
15. Преобразовать строку, изменив порядок следования слов в строке на обратный.
16. Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в конец слова, и изменить порядок следования цифр в слове на обратный.
17. Преобразовать строку, заменяя каждое слово "this" словом "that".
18. Определить, есть ли в данной строке слова, множества символов которых равны.
19. Преобразовать строку, оставляя только один символ в каждой последовательности подряд идущих одинаковых символов.
20. Вывести слово данной строки, предшествующее первому из слов, содержащих букву "а".
21. Удалить из данной строки слова-палиндромы.
22. Вывести слова данной строки в обратном порядке по одному в строке экрана.
23. Удалить из строки слова, содержащие повторяющиеся символы.
24. Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в конец слова без изменения порядка следования их в слове.
25. Преобразовать строку, обратив каждое слово этой строки.
26. Сократить количество пробелов между словами данного предложения до одного.
27. Из данной строки удалить слова, содержащие последовательность символов "abcd".
28. Удалить из строки все символы, не являющиеся буквами, а прописные буквы заменить строчными.
29. Удалить из строки слова, совпадающие с последним словом.
30. Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в начало слова без изменения порядка следования их в слове.
Контрольные вопросы
1. Чем отличается работа со строками в стандартном Паскале и Турбо Паскале?
2. Что представляет собой выражение строкового типа?
3. Перечислите операции, определенные над данными строкового типа. Какие типы при этом являются совместимыми?
4. Перечислите все отличия в описании функции и процедуры.
5. В каких случаях для решения подзадачи следует использовать функции, а в каких - процедуры?
6. Чем отличается обращение к функции от обращения к процедуре?
7. В чем заключается побочный эффект функций?
ЛАБОРАТОРНАЯ РАБОТА № 7
Использование комбинированного и множественного типа
Цельработы: получение навыков работы с записями и множествами.