Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.08.2017, 20:24   #1
Aoizora
Заблокирован
 
Регистрация: 11.11.2016
Сообщений: 261
По умолчанию Отсортировать файлы с числами

В трех файлах даны записи чисел в бинарном, десятичном и текстовом виде. То есть, например,

файл A содержит: 1101, 1011, ...
файл B содержит: 324, 12, ...
файл C содержит: seven, ten, six

Мне нужно отсортировать эти числа и вывести их в другой файл. Формат файлов таков: каждое число записано на отдельной строке, перед каждым числом стоит префикс команды. Например, файл C может выглядеть так:

cmd seven
cmd ten
cmd six

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

Как мне их сортировать и выводить в файл? Конвертить двоичную запись в десятичную, а для текстовой записи завести std::map<string, int> для отображения типа "ten" -> 10?

Как спроектировать программу? Я ввел сущности directory, file и entry - одна строка файла, но не знаю, чем наполнить entry и нужен ли вообще этот класс. Пока что его интерфейс состоит из функций type() для получения кода команды и data() для извлечения числа. Но мне кажется, что этот класс усложнит архитектуру.
Aoizora вне форума Ответить с цитированием
Старый 13.08.2017, 20:39   #2
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

Цитата:
Сообщение от Aoizora Посмотреть сообщение
На основании этого определяю вид записи числа.
101 - это число в двоичной или в десятичной системе?
Croessmah вне форума Ответить с цитированием
Старый 13.08.2017, 21:21   #3
Aoizora
Заблокирован
 
Регистрация: 11.11.2016
Сообщений: 261
По умолчанию

Цитата:
Сообщение от Croessmah Посмотреть сообщение
101 - это число в двоичной или в десятичной системе?
В этом и проблема. Я не знаю, как в таком случае поступить.
Aoizora вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнить массив случайными числами и отсортировать его. Ввести число X. Используя двоичный поиск, определить, сколько чисел, равн Boys Паскаль, Turbo Pascal, PascalABC.NET 1 14.11.2015 09:53
написать программу массивы (C++) - Создать 2 массива по 5 элементов. Заполнить их случайными числами и отсортировать Саша1990 Помощь студентам 1 02.02.2015 00:01
задача на паскале: Матрицу размером 10Х10 заполнить случайными трехзначными числами. Отсортировать по строкам. докторлинус Помощь студентам 8 29.10.2013 09:45
Сформировать двумерный массив и заполнить его случайными числами и отсортировать столбцы в нём методом "пузырька" ( на Pascal ) duxa27 Помощь студентам 2 26.12.2012 12:25
Как отсортировать файлы в обозревателе по расширению? Trinock Win Api 2 04.12.2011 13:28