Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Kostya9397
0 / 0 / 0
Регистрация: 06.06.2013
Сообщений: 8
#1

Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки - C++

07.06.2013, 10:35. Просмотров 1243. Ответов 2
Метки нет (Все метки)

Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2013, 10:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки (C++):

Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки - C++
ребят всю голову сломал уже завтра уже надо сдавать(( Текстовый файл содержит строки – предложения разной длины. Записать их в...

Ошибки (в файле содержатся строки разной длины - записать их в выходной файл в порядке возрастания длины строки) - C++
#include <iostream> #include <set> #include <iterator> #include <fstream> #include <string> #include <algorithm> int main()...

Дан исходный текстовый файл. Записать его строки в выходной файл в перевёрнутом виде - C++
грозят отчислением, нужно решить

Дан входной текстовый файл, строка S (вводится с клавиатуры). Записать в выходной файл все строки входного файла, содержащие в качестве фрагмента стро - C++
Дан входной текстовый файл, строка S (вводится с клавиатуры). Записать в выходной файл все строки входного файла, содержащие в качестве...

Записать в вектор строки разной длины из файла - C++
Всем добрый день, ситуация следующая: не могу записать в вектор строки разной длины из файла допустим есть файл под названием first.txt...

Дан строковый файл. Создать новый строковый файл, содержащий все строки исходного файла наименьшей длины (в том же порядке). - C++
Даны имена двух файлов вещественных чисел. Известно, что первый из них существует и является непустым, а второй в текущем каталоге...

2
Пaтрик
416 / 391 / 39
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
07.06.2013, 10:52 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <algorithm>
#include <functional>
#include <iterator>
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
#include <vector>
 
class by_length_string_copmarer : 
    public std::binary_function<std::string, std::string, bool>
{
public:
    bool operator () (const std::string& s1, const std::string& s2)
    {
        return s1.length() < s2.length();
    }
};
 
bool sort_and_copy(const char *src, const char *dst)
{
    std::vector<std::string> vec;
    std::ifstream ifs(src);
    if (!ifs.is_open())
        return false;
    char ch;
    while (!ifs.eof())
    {
        std::ostringstream outs;
        while (!ifs.eof())
        {
            ch = ifs.get();
            if (ch != EOF)
            {
                outs << ch;
                if (ch == '.' || ch == '!' || ch == '?')
                    break;
            }
        }
        vec.push_back(outs.str());
    }
    ifs.close();
    std::ofstream ofs(dst);
    if (!ofs.is_open())
        return false;
    std::sort(vec.begin(), vec.end(), by_length_string_copmarer());
    std::copy(vec.begin(), vec.end(), std::ostream_iterator<std::string>(ofs, "\r\n"));
    return true;
}
 
int main()
{
    return !sort_and_copy("D:\\f.txt", "D:\\g.txt");
}
0
igorrr37
1648 / 1276 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
07.06.2013, 11:05 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <set>
#include <iterator>
#include <fstream>
#include <string>
#include <algorithm>
 
int main()
{
    std::fstream ifs("in.txt", std::ios::in), ofs("out.txt", std::ios::out);
    if(ifs.is_open() && ofs.is_open())
    {
        std::multiset<std::string, bool(*)(std::string const&, std::string const&)> mset([](std::string const& str1, std::string const& str2){return str1.size() < str2.size();});
        std::string str;
        while(std::getline(ifs, str))
            mset.insert(str);
        std::copy(mset.begin(), mset.end(), std::ostream_iterator<std::string>(ofs, "\n"));
        ofs.close();
        ifs.close();
    }
    else
        std::cerr << "Unable to open file(s)\n";
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2013, 11:05
Привет! Вот еще темы с ответами:

Как отсортировать строки файла в порядке возрастания их длины - C++
Помогите решить задачу!!!!!! Дан файл со строками, отсортировать строки в порядке возрастания их длины

Разработка программного модуля вставки строки заданной длины, содержащую хотя бы один перенос, в текстовый файл - C++
Желательно в программе Visual Studio c++. Тема:Разработка программного модуля вставки строки заданной длины, содержащую хотя бы один...

Переписать в выходную строку слова из входной строки в порядке возрастания их длины - C++
.Пожалуйста помогите решить задачу Срочно нужно было Переписать в выходную строку слова из входной строки в порядке возрастания их...

Переписать в выходную строку слова из входной строки в порядке возрастания их длины. - C++
Помогите с решенеие кому не сложно в Visual C++, пожалуйста. 1. Интервал между минимальным и максимальным значениями элементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru