Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodichka_tekhnologii_programmirovania(1).doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
1 Мб
Скачать
☆

6.2. Задания для самостоятельного решения

Задача 1. Написать программу, которая определяет, встречается ли в заданной строке заданная последовательность символов. Текст не содержит переносов слов, длина строки текста не превышает 80 символов.

Задача 2. В заданной строке слова разделены по крайней мере одним пробелом. Удалить лишние пробелы между словами, оставив между ними только по одному пробелу.

Задача 3. Подсчитать в заданной строке количество всех символов В и удалить из неё те символы В, которым предшествуют (в исходной строке) символы А.

Задача 4. Задана строка, внутри которой слова разделены одним пробелом. Исключить из неё группы символов, расположенные между круглыми скобками. Сами скобки тоже исключить, а оставшиеся слова разделить только одним пробелом. Предполагается, что внутри каждой пары скобок других скобок нет.

Задача 5. В строке могут содержаться круглые, квадратные и фигурные скобки - как открывающие, так и закрывающие. Проверить баланс скобок в заданной строке. Считать, что он соблюдается, если выполнены следующие условия: 1) для каждой открывающей скобки справа от неё есть соответствующая закрывающая скобка, и наоборот; 2) соответствующие пары скобок разных типов правильно вложены друг в друга.

6.3. Задания для контрольной работы

Вариант 1.

Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. Преобразовать ее, заменив все символы «*» на «+» в каждом нечетном по порядку слове и удалив все символы «!» в каждом четном по порядку слове.

Вариант 2.

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

Вариант 3.

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

Вариант 4.

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

Вариант 5.

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

Вариант 6.

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

Вариант 7.

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

Вариант 8.

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

Вариант 9.

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

Вариант 10.

Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. В самом длинном слове заменить все буквы «а» на «б».

Вариант 11.

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

Вариант 12.

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

Вариант 13.

Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. В каждом слове найти номера первой и последней по порядку запятой и записать в вектор разность между этими номерами.

Вариант 14.

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

Вариант 15.

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

Вариант 16.

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

Вариант 17.

Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. Поменять местами слова: первое – со вторым, третье – с четвертым и т.д. Если в строке нечетное число слов, последнее оставить как есть.

Вариант 18.

Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. Все слова с нечетным количеством символов удалить, а все слова с четным количеством символом преобразовать, вставив в начало и конец слов буквы А.

Вариант 19.

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

Вариант 20.

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

  1. Файлы

Файл - это поименованная область памяти на диске или другом внешнем запоминающем устройстве.

Любая программа, использующая существующий файл для ввода или создающая новый файл при выводе, неизбежно содержит шаги:

  1. открытие файла (в соответствующем режиме);

  2. обработка файла (чтение или запись);

  3. закрытие файла.

Имеется ряд общих стандартных процедур для файлов всех типов:

Процедуры и функции

Назначение

Assign (var f; String )

Связывает файловую переменную f с име-нем физического файла, заданным в строке

Reset (var f

[: File; RecSize: Word])

Открывает существующий файл с логичес-ким именем f для чтения

Rewrite (var f: File;

[; RecSize: Word])

Создаёт и открывает новый файл с логи-ческим именем f для записи

Close (var f)

Закрывает открытый канал ввода-вывода с логическим именем f

Eof (var f): Boolean

Возвращает значение true, если достигнут конец файла f или false, если файл f пуст

Erase (var f)

Удаляет закрытый физический файл, свя-занный с файловой переменной f

Rename (var f;

NewName:String)

Переименовывает закрытый физический файл, связанный с файловой переменной f

В таблице ниже приведены функции и процедуры, реализующие прямой доступ в типизированных файлах:

Процедуры и функции

Назначение

FileSize (var f) : Longlnt

Возвращает реальное число записей в открытом файле f.

FilePos (var f) : Longlnt

Возвращает номер записи, на которую установлен текущий указатель в файле f.

Seek (var f; n: Longlnt)

Назначает текущую позицию в файле f.

Truncate (var f)

Удаляет все записи в файле f от позиции текущего указателя до конца файла

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]