Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Из заданного на плоскости множества точек выбрать три различные точки http://www.cyberforum.ru/cpp-beginners/thread894228.html
Из заданного на плоскости множества точек выбрать три различные точки так, чтобы разность между площадью круга, ограниченного окружностью, проходящей через эти три точки, и площадью треугольника с вершинами в этих точках была минимальной.
C++ Шифровка текста двунаправленным списком Надо написать программу для шифровки и расшифровки текстового файла, используя двунаправленный список. Зашифровать получается, а вот расшифровать... Подскажите, что у меня не так? Вот код : #include "stdafx.h" #include <fstream> #include <iostream> using namespace std; // Элемент списка (двунаправленного) http://www.cyberforum.ru/cpp-beginners/thread894210.html
C++ Возможно ли определить тип сборки
Доброго дня. Подскажите, есть ли возможность решения данной проблемы. Для удобства, часто использующиеся в разных проектах классы, я загнал в различные статические библиотеки, и для использования я просто подключаю заголовочный файл с объявлением интерфейса класса, в котором содержится директива: #pragma comment(lib,"mylib.lib") путь к которой прописан в настройках среды (MSVS 2010). Но...
C++ Рекурсивные функции (палиндром)
Необходимо составить программу, которая содержит рекурсивную функ-цию Palindrom(S) логического типа, возвращающую True, если строка S является палиндромом (то есть читается одинаково слева направо и справа налево), и False в противном случае. Оператор цикла в теле функции не использовать. Вывести значения функции Palindrom(S) для пяти данных строк. Помогите плиз!
C++ Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на плоскости http://www.cyberforum.ru/cpp-beginners/thread894194.html
Определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на плоскости.
C++ Замените в тексте входного файла все группы подряд идущих пробелов на один пробел Замените в тексте входного файла все группы подряд идущих пробелов на один пробел. Результат запишите в выходной файл подробнее

Показать сообщение отдельно
Пaтрик
415 / 390 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
07.06.2013, 10:52     Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки
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");
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru