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

Сортировка однотипных элементов из файла - C++

Восстановить пароль Регистрация
 
sd710
1 / 1 / 0
Регистрация: 19.12.2012
Сообщений: 23
29.05.2013, 19:57     Сортировка однотипных элементов из файла #1
Есть файл, в нем хранятся однотипные элементы (какие не важно). Для простоты там будут лежать числа. количество не известно.
Нужна функция которая отсортирует содержимое файла (числа). На выходе получить другой файл, где лежат эти числа отсортированные (не важно как по возрастанию или убыванию).

Предложите свои решения. Можно только функцию, можно хотя бы предложение, как это сделать.

Добавлено через 2 часа 18 минут
Может я не понятно изложил задачу.

пример данных из файла (они однотипные, необязательно числа):
Кликните здесь для просмотра всего текста
9 1 0 4 3 2

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

файл полученный на выходе:
Кликните здесь для просмотра всего текста
0 1 2 3 4 9
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.05.2013, 20:03     Сортировка однотипных элементов из файла #2
Посчитать количество элементов в файле, создать динамический массив нужного размера, считать туда элементы, отсортировать, записать отсортированный массив в файл.
yleart
 Аватар для yleart
60 / 45 / 1
Регистрация: 07.10.2011
Сообщений: 139
29.05.2013, 20:06     Сортировка однотипных элементов из файла #3
Используйте файловые сортировки
sd710
1 / 1 / 0
Регистрация: 19.12.2012
Сообщений: 23
29.05.2013, 20:16  [ТС]     Сортировка однотипных элементов из файла #4
Цитата Сообщение от alsav22 Посмотреть сообщение
Посчитать количество элементов в файле, создать динамический массив нужного размера, считать туда элементы, отсортировать, записать отсортированный массив в файл.
Создавать динамический массив это решение, но не самое лучшее. Нужно использовать вспомогательные файлы (я так думаю).

Добавлено через 25 секунд
Цитата Сообщение от yleart Посмотреть сообщение
Вроде то, что надо. попробую разобраться. спасибо
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.05.2013, 20:17     Сортировка однотипных элементов из файла #5
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
#include <algorithm>
#include <iostream>
#include <iterator>
#include <fstream>
#include <vector>
 
template <typename T>
bool sort_numbers(const char *input, const char *output)
{
    std::ifstream in(input);
    if (!in.is_open())
        return false;
    std::ofstream out(output);
    if (!out.is_open())
        return false;
    std::vector<T> data (
        (std::istream_iterator<T>(in)),
        (std::istream_iterator<T>()));
    std::sort(data.begin(), data.end());
    std::copy(data.begin(), data.end(), std::ostream_iterator<T>(out, " "));
    in.close();
    out.close();
    return true;
}
 
int main()
{
    sort_numbers<double>("in.txt", "out.txt");
}
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.05.2013, 21:14     Сортировка однотипных элементов из файла #6
Цитата Сообщение от sd710 Посмотреть сообщение
Создавать динамический массив это решение, но не самое лучшее.
Но самое простое. Хотя, дело ваше, пробуйте.
Yandex
Объявления
29.05.2013, 21:14     Сортировка однотипных элементов из файла
Ответ Создать тему
Опции темы

Текущее время: 02:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru