Срок выполнения: 25 сентября – 8 октября
Задание
...
...
Напишите программу на Си++, которая работает по созданному автомату.
Символы читать со стандартного входа (std::cin), писать на стандартный выход (std::cout).
Использовать массивы нельзя.
На одной итерации можно выводить несколько символов (только если это действительно необходимо).
Символы в кодовых таблицах могут располагаться произвольно, поэтому для работы с диапазонами символов нужно по возможности использовать функции is... и toupper, tolower. Там, где эти функции не помогают, нужно проверять все символы диапазона явно.
Примеры
Копирование: 01.zip
Удаление пробелов: 02.zip
Удаление пробелов и табуляций: 03.zip
Удаление пробельных символов: 03-4.cpp
Замена пробельных цепочек на один пробел: 04.zip
Вывод слов, начинающихся с p
: p.zip
Примеры
Проверка сбалансированности скобок: par.cpp
Варианты
Расчёт номера своего варианта см. на страницеУспеваемость студентов.
В данной работе:
целое число – строка из десятичных цифр, сразу перед ней может стоять плюс или минус, например: 034023, 656, -0, +534;
тег – строка, обрамлённая угловыми скобками, не может прерываться переходом на новую строку, например: <int>, <>, <<<<q<>, <d d d d >, </>;
комментарий – строка, которая начинается символами /*
и заканчивается символами */
;
0. Вывести целые числа, которые находятся внутри двойных кавычек.
1. Удалить целые числа, которые находятся вне двойных кавычек.
2. Вне комментариев заменить последовательности восклицательных знаков на один восклицательный знак, последовательности вопросительных знаков – на один вопросительный знак, последовательности из восклицательных и вопросительных знаков вперемешку – на ?!
.
3. Посчитать теги внутри комментариев.