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

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

Войти
Регистрация
Восстановить пароль
 
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
#1

В файле имеются 14 записей с полями. В начале отсортировать их по одному полю, потом по другому - C++

05.03.2016, 16:23. Просмотров 255. Ответов 11
Метки нет (Все метки)

Имеется файл, в котором есть поля: №(номер), ФИО, дата рождения, место работы, стаж.
Подскажите, как написать программу, чтобы в начале она сортировала по полю стаж, а потом по полю ФИО (как пояснил преподаватель, у тех, кого одинаковый стаж, чтобы они сортировались дополнительно по полю ФИО).
+ вводить данные в программу нельзя, нужно брать именно из файла. Можно ли как-то реализовать выборку данных из файла Excel???

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

Совпадение по одному полю, но различие по другому - MS Access
Добрый день! Снова нужна помощь! Имеется таблица с полем FIO и день рождения. Структура базы неверная, поэтому в одной таблице существует...

Сортировка сначала по одному полю, а затем по другому - MySQL
Есть в таблице запись с полями `num` и `comm_k` Надо сначала отсортировать по полю num , а потом (уже отсортированое) отсортировать по...

Создать сложный отчет - выборка по одному полю, группировка по другому - MS Access
Уважаемые гуру ! Я новичок в Аксессе, так что прошу сильно не пинать. Есть таблица с полями Рейс, дата, работа, категория. ...

Запрос по выборке записей максимально повторяющихся по одному полю - Delphi БД
Имеется таблица, в которой записаны картриджи, которые заправлялись в СЦ, таблица имеет поля ID, Modelcartridga, Articul и т.д. Артикул -...

Подсчёт суммы по одному полю и количества записей по двум другим - MySQL
Здравствуйте. Помогите, пожалуйста, составить запрос к таблице tbl1 вида: fld_id(int), fld_int(int), fld_txt1(text), fld_txt2(text). В...

Как отсортировать массив элементов некоторого класса в java по одному полю используя sort? - Java
Здравствуйте, уважаемые участники форума! Возник такой вопрос: Как отсортировать массив элементов некоторого класса в java по одному...

11
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
05.03.2016, 16:58 #2
При прохождении по стажу я бы смотрел есть ли еще записи с таким же стажем, если есть, захожу в отдельный цикл, и там хожу только по этим записям ища самую младшую (по фамилии) и вывожу, и т.д.

Мне кажется есть варианты по проще, но на первый взгляд я бы делал так.
0
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
05.03.2016, 17:19  [ТС] #3
Ryuk, Проблема в том, что сортировку я бы и смог реализовать, но как сделать это все это их файла - ума не приложу. Если можно взять файл Excel, то это думаю проще, чем из txt файла
0
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
05.03.2016, 17:24 #4
Frip, часика через 3 накатаю программку, скину тогда.
0
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
05.03.2016, 17:29  [ТС] #5
Ryuk, буду вам премного благодарен
0
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
06.03.2016, 22:33  [ТС] #6
bump

Добавлено через 3 часа 49 минут
Ryuk, я жду вашего ответа, помогите пожалуйста!
0
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
07.03.2016, 08:15 #7
Frip, дело в том, что тут нужен либо типизированный файл (как вы уже указали - excel), либо сохранение всего файла в массив. Есть вариант сортировки вставками, т.к. она меняет местами только 1 элемента, но это очень долго и не рационально. Адекватного тутора по импорту данных из .xlsx в VS я не нашел, есть только Билдер и Qt.
1
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
07.03.2016, 12:22  [ТС] #8
Насчет .xlsx я спрашивал, говорят есть директория libxl может ли работать C++ с документами Excel?

И если не использовать её, уж лучше через текстовый файл. Я бы может и разобрался с текстовым файлом, но совершенно не понимаю, как именно программой выбрать поле Стаж, а потом фио, ибо они разные по размер и по пробелам в файле не определить, если только использовать какие-либо разделители, что-то вроде '|'

Добавлено через 16 минут
Ryuk, тоже поискал, можно сделать в delphi использовать с .xlsx файлами
0
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
07.03.2016, 14:08 #9
Frip, а чем | отличается от пробела? Если данные в формате: Петров А. А. 1875..., то для того чтобы год отследить, понятно что нужно считывать после 3-его пробела. Можно конечно: Петров А. А.|1875...

Если хотите на плюсах, как вариант на Борланде писать, у Делфи тоже Борланд есть. Так что тут уже дело за вами. Кстати через Борланд можно напрямую обращаться к функциям самого экселя. Просто заходите в файл, выбираете функцию сортировки по определенному столбцу и вуаля, файл отсортирован (у меня была практика с подобными вещами на VBA).
0
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
07.03.2016, 14:10  [ТС] #10
надо сортировку по стажу, проблема в том, что до этого есть поле "место работы", где может стоять много пробелов, да и ФИО нужно писать полностью, опять же пробелы
0
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
07.03.2016, 16:58 #11
Frip, тогда можно организовать проверку, при первом вхождении числа и до первого пробела после числа, считать это датой рождения.
1
Frip
2 / 2 / 1
Регистрация: 04.11.2013
Сообщений: 263
07.03.2016, 17:00  [ТС] #12
так там числа не только дата рождения, но и стаж работы, который указывается в виде "1 год, 5 лет".
Вы поможете написать программу? Очень нужно решить
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.03.2016, 17:00
Привет! Вот еще темы с ответами:

Можно ли делая сортировку в типизированном файле по одному полю не перекидывать ссылки на всех остальных полях - Turbo Pascal
Скажи пожалуйсто можно ли делая сортировку в типизированном файле по одному полю не перекидывать сылки на всех остальных...

Подсчет уникальных значений по полю с фильтром по другому полю - MS Excel
Добрый день! Есть два столбца. Хочу посчитать количество строк, но по первому условию отобрать записи в ячейках которых встречается...

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

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


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

Или воспользуйтесь поиском по форуму:
12
Yandex
Объявления
07.03.2016, 17:00
Ответ Создать тему
Опции темы

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