- •Задача 1
- •Задача 2
- •Задача 3
- •Условие задачи
- •Входные данные
- •Описание функций
- •Название: filequestion.
- •Задача 4
- •Условие задачи
- •Входные данные.
- •Выходные данные
- •Описание функций
- •Название: filequestion.
- •Задача 5
- •Условие задачи
- •Входные данные
- •Выходные данные
- •Описание функций
- •Название: filequestion.
- •Задача 6
Задача 3
Условие задачи
Написать программу для обработки информации о произведениях искусства, выставленных на аукционную продажу. Информация включает в себя номер лота, название произведения, автора, материал, начальную стоимость
Входные данные
Название одного произведения
Назначение: часть исходных данных для заполнения базы данных
Обозначение в программе: элемент name структуры типа WORKS.
Тип: символьный (char)
Диапазон допустимых значений: все символы.
Имя автора одного произведения
Назначение: часть исходных данных для заполнения базы данных
Обозначение в программе: элемент author структуры типа WORKS.
Тип: символьный (char).
Диапазон допустимых значений: все символы.
Название материала одного произведения
Назначение: часть исходных данных для заполнения базы данных
Обозначение в программе: элемент material структуры типа WORKS.
Тип: символьный (char).
Диапазон допустимых значений: все символы.
Номер одного лота
Назначение: часть исходных данных для заполнения базы данных
Обозначение в программе: элемент number структуры типа WORKS.
Тип: целочисленный (int).
Диапазон допустимых значений: (0;32768]
Начальная цена одного лота
Назначение: часть исходных данных для заполнения базы данных
Обозначение в программе: элемент number структуры типа WORKS.
Тип: вещественный (float).
Диапазон допустимых значений: [0;3.4E+38]
Описание функций
Название: filequestion.
Назначение: определение способа ввода исходных данных (в окне программы либо из файла); определение необходимости сохранения результатов в текстовый файл
Указания по вызову и использованию*: для определения способа ввода исходных данных следует передать в функцию в качестве параметра число 1, для определения необходимости сохранения результатов в текстовый файл следует передать число 2.
Список формальных параметров:
pos
Тип: целочисленный (int).
Назначение: определение назначения функции как определяющей способ ввода исходных данных либо как определяющей необходимость сохранения результатов в текстовый файл.
Описание внешних эффектов: в зависимости от определенного для функции назначения и правильности её вызова в программе выдаются сообщения, просящие пользователя выбрать способ ввода данных; сохранять результаты в файл или нет. В случае неправильного вызова функции выводится сообщение об ошибке в программе.
Название: enter_int
Назначение: считывание вводимой информации и, в случае ввода целого числа, его возвращение
Указания по вызову и использованию: следует использовать при необходимости ввода целочисленных данных
Описание внешних эффектов: в случае ввода нецелочисленной информации выводится сообщение о том, что введено не целое число
Название: enter_float
Назначение: считывание вводимой информации и, в случае ввода вещественного числа, его возвращение
Указания по вызову и использованию: следует использовать при необходимости ввода вещественных данных
Описание внешних эффектов: в случае ввода невещественной информации выводится сообщение о том, что введено не вещественное число.
Название: enter_string
Назначение: считывание вводимой информации в строку
Указания по вызову и использованию: следует использовать при необходимости ввода строки
Список формальных параметров:
*str
Тип: символьный (char)
Назначение: строка, в которую записываются введённые данные
Название: delete_slash_n
Назначение: удаление служебного символа ‘\n’ из конца строки.
Указания по вызову и использованию: применять к строкам, полученным с помощью функции fgets и изначально находившимся не в конце файла-источника
Список формальных параметров:
*str
Тип: символьный (char)
Назначение: строка, из которой будет удаляться символ ‘\n’
Название: newf
Назначение: создание нового файла
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, производится считывание имени создаваемого файла, количества добавляемых записей и записей; в случае ввода данных клавиатурой – сообщение, приглашающее пользователя ввести вышеперечисленные параметры. В случае ошибки открытия файла-источника или создаваемого файла выводится сообщение с названием ошибки.
Название: addf.
Назначение: дозапись в имеющийся файл
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае открытия базового файла, из него считываются и выводятся на экран имена существующих файлов. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, производится считывание имени файла для добавления записей, количества добавляемых записей и записей; в случае ввода данных клавиатурой – сообщение, приглашающее пользователя ввести вышеперечисленные параметры. В случае ошибки открытия файла-источника или файла для добавления выводится сообщение с названием ошибки.
Название: editf
Назначение: редактирование имеющихся записей
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае открытия базового файла, из него считываются и выводятся на экран имена существующих файлов. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, из которого затем происходит считывание имени файла, запись в котором нужно редактировать, номер редактируемой записи и правильные варианты полей с указанием номера поля. В случае ввода данных клавиатурой выводится сообщение, приглашающее пользователя ввести вышеперечисленные параметры либо завершить редактирование полей. В случае ошибки открытия файла-источника или файла для редактирования выводится сообщение с названием ошибки.
Название: delf
Назначение: удаление существующей записи.
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае открытия базового файла, из него считываются и выводятся на экран имена существующих файлов. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, из которого затем происходит считывание имени файла, из которого нужно удалить запись, и номера удаляемой записи. В случае ввода данных клавиатурой выводятся сообщения, приглашающие пользователя ввести вышеперечисленные параметры. В случае ошибки открытия файла-источника или файла для удаления записи выводится сообщение с названием ошибки. В процессе выполнения создаётся временный файл, куда помещаются все записи открываемого файла, кроме удаляемой. Затем открытый файл пересоздаётся и заполняется содержимым временного файла.
Название: findf
Назначение: поиск по любому сложному критерию
Описание внешних эффектов: В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, из которого затем производится считывание номеров критериев с требованиями к ним для поиска. В случае ввода данных клавиатурой выводятся сообщения, предлагающие пользователю ввести необходимые запросы самостоятельно, либо прекратить добавление критериев. В случае невозможности открытия базового файла либо какого-либо из существующих файлов, выводятся сообщения с названием ошибки. При успешном выполнении выводятся имена файлов, содержащих удовлетворяющие запросу записи, с указанием номера записи в файле и самой записи. В случае необходимости сохранения результатов в текстовый файл, выводится сообщение, приглашающее ввести имя файла для сохранения. В случае невозможности создать файл с введённым именем, выводится сообщение с названием ошибки. При успешном открытии файла, в него записывается сообщение с результатами работы функции, идентичное выведенному на экран.
Название: sort_by_author.
Назначение: сортировка по автору.
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае открытия базового файла, из него считываются и выводятся на экран имена существующих файлов. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, из которого затем происходит считывание имени файла, записи в котором нужно отсортировать по автору. В случае ввода данных клавиатурой выводится приглашение ввести название файла для сортировки. В случае ошибки открытия файла-источника или файла для удаления записи выводится сообщение с названием ошибки.
Название: sort_by_price.
Назначение: сортировка по начальной цене
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае открытия базового файла, из него считываются и выводятся на экран имена существующих файлов. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, из которого затем происходит считывание имени файла, записи в котором нужно отсортировать по начальной цене. В случае ввода данных клавиатурой выводится приглашение ввести название файла для сортировки. В случае ошибки открытия файла-источника или файла для удаления записи выводится сообщение с названием ошибки.
Название: outf
Назначение: вывод базы данных из файла на экран
Описание внешних эффектов: в случае невозможности открытия базового файла, содержащего список созданных файлов с базами данных, выводится сообщение с названием ошибки. В случае открытия базового файла, из него считываются и выводятся на экран имена существующих файлов. В случае ввода данных из файла выводится сообщение, приглашающее пользователя ввести имя файла, содержимое которого необходимо просмотреть. В случае ввода данных клавиатурой выводится приглашение ввести название файла для просмотра. В случае ошибки открытия файла-источника или файла для удаления записи выводится сообщение с названием ошибки. В случае необходимости сохранения результатов в текстовый файл, выводится сообщение, приглашающее ввести имя файла для сохранения. В случае невозможности создать файл с введённым именем, выводится сообщение с названием ошибки. При успешном открытии файла, в него записывается сообщение с результатами работы функции, идентичное выведенному на экран.
Название: nothing
Назначение: заполнение массива указателей на функции для обеспечения перехода из меню задания в главное меню программы
Название: structin
Назначение: ввод структуры данных типа WORKS.
Список формальных параметров:
&s
Тип: WORKS
Назначение: заполняемая переменная
Описание внешних эффектов: выводятся приглашения ввести название, автора, материал, номер лота и начальную стоимость произведения
Название: structout
Назначение: ввод структуры данных типа WORKS.
Список формальных параметров:
&s
Тип: WORKS
Назначение: переменная, содержание которой выведется на экран
Описание внешних эффектов: выводятся название, автор, материал, номер лота и начальная цена произведения
Название: menu2
Назначение: выбор действия над базой данных
Описание внешних эффектов: выводится приглашение выбрать необходимое действие.
Название: t3
Назначение: решение задачи
Описание внешних эффектов: перед каждым вызовом функции menu2 выводится сообщение паузы и экран очищается.