Работа с файлами и поиск по шаблону [ За вознаграждение! ]

Ответить
[ jack ]
Сообщения: 1
Зарегистрирован: 25 май 2009, 16:35

Работа с файлами и поиск по шаблону [ За вознаграждение! ]

Сообщение [ jack ] » 25 май 2009, 16:50

Здравствуйте.
Итак, ищу тех кто готов мне сделать лабораторную работу на С++ по представленному ниже заданию. Срок - очень желательно до 30-31 мая.
О цене договоримся (ну естественно в пределах разумного).
Пишите свои предложения здесь или на brutalblack@mail.ru

Само задание:

Написать программу, которая выполняет ввод текстовой информации из файла, осуществляет преобразование информации в соответствии с вариантом задания (см. ниже) и выводит преобразованную информацию в файл или в стандартный поток вывода (на экран).
Программа представляет собой консольную утилиту . Настройка работы программы осуществляется путем передачи аргументов в строке запуска. .

Строка запуска программы имеет следующий формат:

имя_программы [опции] исходный_файл [результирующий_файл]

где
• опции – последовательность ключей, настраивающих поведение программы. Общие для всех вариантов опции перечислены в таблице 1. Некоторые варианты могут предусматривать дополнительные опции.
• исходный_файл – путь к файлу, из которого нужно считывать информацию. Исходный файл является обязательным аргументом;
• результирующий_файл – путь к файлу, в который нужно вывести результаты преобразования. Если результирующий файл не задан, результаты преобразования записываются в стандартный поток вывода. Результирующий файл может совпадать с исходным.

Таблица1:
Опция Значение
-b=N Выполнять действия, предусмотренные вариантом программы, начиная со строки номер N исходного текста. Если эта опция не задана, то действия выполняются, начиная с первой строки текста.
-e=M Выполнять действия, предусмотренные вариантом программы, до строки номер M исходного текста включительно. Если эта опция не задана, то действия выполняются до конца текста.

Вариант задания: Найти в исходном тексте все слова, соответствующие заданному шаблону. В шаблоне могут присутствовать символы “.” (точка), означающий любую букву, “@” (коммерческое эт), означающий гласную, “$” (знак доллара), означающий согласную, и “?” (знак вопроса), означающий любую букву или её отсутствие.
Пример: шаблону «.@$@??» соответствуют слова «mama», «pony», «topic», «aero» и не соответствуют «dad», «port», «aeroplan», «beam».

Замечания:
Замечание 3. Обратите внимание, что функция getopt() не входит в стандартную библиотеку и не реализована в MS Visual C++. Вам придется написать её аналог (видимо, существенно более простой).

Замечание 4. Использование UNICODE не возбраняется, однако можно считать, все строки имеют кодировку ASCII и не содержат кириллицу (CP 437).

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

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


Ответить