Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания к лаб. раб.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
805.38 Кб
Скачать

Контрольные вопросы

  1. Для чего используются подпрограммы?

  2. Перечислите виды подпрограмм и дайте им характеристики.

  3. Где располагаются описания подпрограмм?

  4. Назовите отличия функций и процедур.

  5. Какие переменные называются глобальными?

  6. Что такое формальные параметры и как они используются?

  7. Что такое локальные переменные?

  8. Чем отличаются формальные параметры от локальных переменных?

  9. Какие виды формальных параметров существуют в Паскале? Дайте им характеристику.

  10. Что такое фактические параметры и как они используются?

  11. Чем может являться фактический параметр, если соответствующий ему формальный параметр описан как параметр-пере-менная?

  12. Чем может являться фактический параметр, если соответствующий ему формальный параметр описан как параметр-зна-чение?

  13. Чем может являться фактический параметр, если соответствующий формальный параметр описан как параметр-кон-станта?

  14. Могут ли в списке формальных параметров функции стоять параметры-переменные?

  15. Объясните механизм передачи параметров.

  16. Назовите правило соответствия формальных и фактических параметров.

  17. Какого типа может быть результат функции?

  18. Как выглядит обращение к подпрограмме? Чем отличается обращение к функции от обращения к процедуре?

  19. Как процедура возвращает свои результаты в вызывающую программу?

  20. Как функция возвращает результат в вызывающую программу?

  21. Может ли подпрограмма пользоваться глобальными переменными?

Лабораторная работа № 7 Строки

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

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

Написать две программы согласно индивидуальному варианту. Использовать строковые и символьные переменные, но не массивы символов.

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

  1. Дана строка символов. Заменить в ней большие (прописные) русские буквы на маленькие (строчные), а маленькие на большие, остальные символы оставить без изменения.

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

  1. Дана символьная строка. Определить длину самой длинной подстроки из подряд стоящих букв «о».

  2. Дана строка, содержащая последовательность слов, разделенных запятыми, и заканчивающаяся точкой. Удалить из нее все слова нечетной длины.

  1. Дана строка символов. Преобразовать её, заменяя каждый пробел на два пробела, а из каждой пары идущих подряд одинаковых букв оставляя только одну.

  2. Дана строка, содержащая предложение, заканчивающееся точкой. Подсчитать в ней число слов, содержащих хотя бы одну букву «а».

  1. Дана строка символов, содержащая арифметическое выражение. Проверить баланс скобок в выражении. (Количество открывающих и закрывающих скобок должно быть одинаковым, и закрывающая скобка не может стоять раньше, чем соответствующая ей открывающая.)

  2. Дана строка, содержащая последовательность слов, разделенных запятыми и точками. Проверить, что слова, стоящие после запятой, начинаются с маленькой буквы, а слова, стоящие после точки, и первое слово − с большой. Если это не так, то исправить.

  1. Дана строка символов, заканчивающаяся точкой. Вывести ее на экран в обратном порядке без пробелов и знаков препинания.

  2. Дана строка символов. Определить, входят ли в ее состав числа. Если да, то найти их сумму. Будем считать, что числа в строке могут быть только целыми.

  1. Дана символьная строка. Зашифровать в ней все латин-ские буквы с помощью циклической подстановки: AВС…YZA .

  2. Дана строка, содержащая последовательность слов, разделенных пробелами, и заканчивающаяся точкой. Записать слова этой строки в обратном порядке («мама мыла раму»  «раму мыла мама»).

  1. Дана строка символов, состоящая из цифр от 0 до 9. Зашифровать её. Для этого составить новую строку из букв, заменяя каждую цифру на букву латинского алфавита, порядковый номер которой соответствует заменяемой цифре (‘0’ − на ‘А’, ‘1’ − на ‘В’ и т.д.).

  2. Дана строка, содержащая предложение, заканчивающееся точкой. Найти в нем слова, содержащие наибольшее количество букв «о».

  1. Дана строка символов. Преобразовать строку, из групп идущих подряд пробелов оставляя по одному и удваивая все гласные буквы.

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

  1. Дана строка символов. Заменить все пробелы в ней точками и запятыми поочередно.

  2. Дана строка символов. Изменить строку: во всех словах, имеющих нечетное количество символов, средний символ удалить.

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

  2. Дана символьная строка, содержащая предложение, заканчивающееся точкой. Преобразовать её, удаляя однобуквенные слова и лишние пробелы.

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

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

  1. Дана строка символов. Проверить, является ли она правильной десятичной записью вещественного числа.

  2. Дана строка символов, содержащая последовательность слов, разделенных пробелами, и заканчивающаяся точкой. Определить, сколько слов, состоящих из пяти и более символов, содержит данная строка.

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

  2. Дана строка символов, содержащая последовательность слов, разделенных любым количеством пробелов и знаками препинания, и заканчивающаяся точкой. Удалить из нее все слова, начинающиеся с буквы «а».

  1. Дана строка, содержащая дату в формате “дд.мм.гггг”. Проверить корректность этой даты и сформировать строку, содержащую следующую по порядку дату.

  2. Дана строка символов, содержащая предложение, заканчивающееся точкой. Найти в строке самое длинное слово и вывести его на экран.

  1. Дана строка символов. Удалить из нее все повторные вхождения букв.

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

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

  2. Дана строка символов, содержащая некоторый текст. Определить, сколько слов текста составлено из букв русского алфавита, сколько из латинских. Слова, в которых присутствуют буквы обоих алфавитов, заменить словом «ошибка».

  1. Дана строка символов. Заменить каждый пробел в ней двумя знаками подчеркивания, а каждое сочетание букв ‘он’ заключить в круглые скобки.

  2. Дана строка символов, содержащая некоторый текст. Во всех словах с четным номером поменять местами первый и последний символы.

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

  2. Дана строка, содержащая предложение, заканчивающееся точкой. Поменять в нем местами первое и последнее слова.

  1. Дана строка символов. Заменить в строке все слоги “да” на “не” и удалить символ, предшествующий каждому пробелу.

  2. Дана строка символов, содержащая предложение, заканчивающееся точкой. Инвертировать каждое слово в заданном предложении.

  1. В БГТУ принято, что старшая цифра номера студенческой группы означает номер кафедры, средняя – последнюю цифру года поступления, младшая – порядковый номер группы на курсе. Продолжительность обучения не более 6 лет. Дан номер группы студента и текущий год. Определить, к какой кафедре прикреплен студент, в каком году он поступил и на каком сейчас курсе.

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

  1. Дана строка, содержащая арифметическое выражение, в которое входят целые числа и знаки ‘+’ и ‘−‘ и которое заканчивается знаком ‘=’. Например, ‘17+23−4+121=’. Вычислить значение этого выражения и дописать результат в заданную строку после знака ‘=’.

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

  1. Дана строка символов, заканчивающаяся точкой. Определить, является ли она палиндромом. (Палиндром слева направо и справа налево читается одинаково, например «Леша на полке клопа нашел».) Пробелы и знаки препинания, а также регистр букв не учитываются.

  2. Найти самое длинное слово в заданном предложении.