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

Динамическая структура. Кто бы решил?( на C) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Динамическая структура. Кто бы решил? http://www.cyberforum.ru/cpp-beginners/thread70792.html
Дан бинарный файл, содержащий записи. Необходимо реализовать программу, которая бы загружала данный бинарный файл в динамическую структуру: двунаправленный список связанного хранения. После загрузки данных производится сортировка списка, выбор поля и направления сортировки осуществляется пользователем. По окончании сортировки упорядоченный список должен быть выведен на экран. Далее...
C++ Работа с системой напишите пожалуйста программу, которая выводит сведения о системе(видеокарта, частота процессора, и т.д.)! http://www.cyberforum.ru/cpp-beginners/thread70780.html
Граф Герца C++
Всем привет! не могли бы вы помочь с написанием задачи вот на такую тему. ориентированный граф сильно связен, если для любой пары вершин u,v существует путь из u в v. Компонентой сильной связности назовем произвольный максимальный сильно связный подграф. Конденсацией ориентированного графа (или графом герца или фактор-графом) называется орграф, который получается стягиванием в одну вершину...
Работа с строками ЯЗЫК "СИ" C++
Ребята помогите пожалуйста решить задачу на языке "С" В исходном тексте 2 рядка S1 и S2. Проверить, есть ли рядок S1 суффиксом рядка S2 С использованием собственной функции.
C++ Ввести несколько строк и проверить, может ли этот текст быть классом http://www.cyberforum.ru/cpp-beginners/thread70764.html
Всем привет. Помогите плиз исправить так чтобы программка была с классом!) Задание: Ввести несколько строк и проверить, может ли этот текст быть классом. Проверять только наличие слова class , фигурных скобок в начале и конце, точки с запятой в конце. Программа должна выдавать одно из двух сообщений: "текст не может быть классом " или " возможно, что текст является классом, но нужна...
C++ Вопрос по классам создал конструктор, который создаёт элемент класса - массив, а вот инициализация данного массива с помощью нового конструктора не удаётся... подскажите пожалуйста - как инициализировать-то вот создание массива: class Test { public: int *massive; Test(int size) { massive=new int; подробнее

Показать сообщение отдельно
Viktor St.
3 / 3 / 1
Регистрация: 05.12.2009
Сообщений: 16

Динамическая структура. Кто бы решил?( на C) - C++

05.12.2009, 15:55. Просмотров 1014. Ответов 1
Метки (Все метки)

Дан бинарный файл, содержащий записи.
Необходимо реализовать программу, которая бы загружала
данный бинарный файл в динамическую структуру: двунаправленный список
связанного хранения. После загрузки данных производится сортировка списка,
выбор поля и направления сортировки осуществляется пользователем. По
окончании сортировки упорядоченный список должен быть выведен на экран.
Далее пользователь может добавить в список произвольное количество записей,
введя их с клавиатуры. Добавление
записей в список осуществляется без нарушения правил упорядочивания записей
(использовать функцию сортировки при вводе записей нельзя, запись должна
добавляться в список в нужную позицию). После завершения ввода необходимо
удалить из списка часть записей. При этом все
удаляемые записи должны быть записаны в выходной текстовый файл, если он
был указан пользователем. Все оставшиеся в списке записи сохраняются в
исходный бинарный файл, перезаписывая его.
Информация, необходимая для работы программы, передается в параметрах
командной строки. Необходимо реализовать обработку следующих параметров:
Имя исходного бинарного файла (указывается в формате file:<имя файла>),
если имя не указано, то его ввод запрашивается у пользователя. Если файл с
указанным именем открыть не удалось, то выводится соответствующее
сообщение, выполнение программы продолжается с ввода новых записей, а
результирующий список записывается в файл result.bin.
Поле сортировки (указывается в формате field:N, где N – номер поля равное
1,2,3 и т.д.). Если этот параметр не указан, то он принимается равным 1.
Направление сортировки (указывается в формате dir:inc – сортировка по
возрастанию, dir:dec – сортировка по убыванию). Если этот параметр не
указан, то он принимается равным inc.
Выходной текстовый файл (указывается в формате out:<имя файла>).
При реализации программы учитывать, что параметры командной строки
могут быть переданы в произвольном порядке. Например, программа может быть
запущена одним из следующих способов:
proga.exe file:data.bin field:2 dir:dec out:log.txt
proga.exe field:2 dir:dec file:data.bin
proga.exe file:data.bin out:log.txt
proga.exe out:log.txt field:2 dir:dec file:data.bin
Программа должна быть реализована с использованием функционального и
модульного подходов. Рекомендуется, чтобы в программе были реализованы
следующие модули:

главный модуль (MAIN), содержащий функцию main;
модуль (DATA), содержащий описание структуры данных;
модуль (LIST), содержащий функции для работы с динамическим списком;
модуль (FUNC), содержащий вспомогательные функции.
Для работы со списком необходимо реализовать как минимум следующие
функции:
добавление записи в конец списка,
вставка записи в середину списка,
удаление записи из списка,
перемещение по списку,
сортировка списка,
сохранение списка в файл,
загрузка списка из файла,
удаление всего списка.
В качестве дополнительных функций можно привести следующие функции:
проверка корректности ввода значений с клавиатуры;
сравнение двух записей (для сортировки).
Необходимо учитывать, что значение полей, которые заключены в кавычки в
формате ввода/вывода, могут состоять из нескольких слов. При вводе все
значения должны проходить проверку на корректность. Значения полей,
представляющих собой перечисления нескольких значений
должны вводиться с помощью специальными
обозначений. Например: тип носителя – CD, DVD и ни как иначе.
Алгоритм сортировки динамического списка:
алгоритм сортировки «вставками».
Дополнительно необходимо реализовать программы для создания исходного
файла и его просмотра. Программа создания исходного файла должна
запрашивать у пользователя имя файла, а затем осуществлять ввод данных и
запись их файл. Ввод данных завершается по требованию пользователя. Ввод
значений полей одной записи осуществляется u1088 раздельно, а не согласно формату
строки ввода. Программа просмотра файла в качестве параметров командной
строки получает имя файла и выводит значения, содержащиеся в нем, согласно
формату вывода. Вывод осуществляется по 20 записей или до конца файла, если
записей в нем осталось меньше 20. Продолжение вывода осуществляется после
нажатия пользователем любой клавиши.

Описание структуры: содержит информацию о людях: ФИО (строки по 15 символов),
пол, дата рождения (в формате дд.мм.гггг), серия (два символа) и номер (целое
семизначное число) паспорта.
Формат ввода/вывода: ФИО (ПОЛ) ДД.ММ.ГГГГ СЕРИЯ:НОМЕР
Дополнительная обработка: Удалить из списка последние N записей, с определенным
именем человека.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru