Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ работа с файлами в С++

Автор: loki 13.01.2009 21:55

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

1.Даны два символьных файла f1 и f2 . Файл f1 содержит
произвольный текст. Слова в тексте разделены пробелами и знаками
препинания. Файл f2 содержит не более 40 слов, которые разделены
запятыми. Эти слова образуют пары: каждое первое слово считается
заменяемым, каждое второе слово - заменяющим. Найти в файле f1 все
заменяемые слова и заменить их на соответствующие заменяющие.
Результат поместить в файле g.

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

Автор: volvo 13.01.2009 22:20

И что? Сам что-то начал делать?

По первой программе один из возможных алгоритмов: сначала прочесть из второго файла все пары слов, и занести их... ммм... ну, хотя бы в std::map<std::string, std::string>, первой строкой (ключ) будет заменяемое слово, а второй (значение) - заменяющее. А потом - все просто: читать из первого файла построчно текст, и заменять в нем (std::string::find + std::string::replace) все ключи, которые найдутся, на значения. Что именно из этого тебе представляется наиболее сложным?

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

Цитата
построить все такие прямоугольники
... Что, построить графически? А не боишься, что приведенный код будет не под Windows, например, ведь в Стандарте С++ нет требований графической подсистеме, это компиляторо-ориентировано, а Windows - далеко не у всех...

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

Автор: loki 14.01.2009 13:41

сам делать ничего не начал, ибо файлы абсолютно не понимаю, пользуюсь обычным turbo C, или Devcpp, графику обычно делал в турбо С, т.е. не под винду