
- •13. (Химанализ.)
- •Уш.З. Иерархия типов данных
- •15. (К годовому отчету.) в каждой компоненте файла ста-тистика-по-рапо содержатся следующие сведения:
- •16. (Обработка файла платежи,- Формирование новых файлов.) в каждой компоненте файла платежи содержатся следующие сведения:
- •17. (Итоги экзаменационной сессии.) Каждая компонента файла сессия содержит следующие данные из экзаменационной ведомости:
- •18. (Контроль ключевого поля.) в каждой компоненте файла кадры содержится:
- •19. (Обработка файла поставки. - Упорядоченные файлы.) Каждая компонента файла поставки содержит:
- •20. (Поквартальный план.) Каждая компонента исходного файла поквартальный-план, имеющего отношение к выпуску обуви некоторым предприятием, содержит:
- •21. (Подписная компания.) Каждая компонента файла подписные издания содержит:
- •1.2. При составлении одношаговых заданий рекомендуется рассмотреть следующие виды наборов данных:
18. (Контроль ключевого поля.) в каждой компоненте файла кадры содержится:
- табельный номер (служащего);
- контрольная цифра;
- данные (о служащем).
Табельный
номер
-
это целое число, записанное
6
цифрами. Контрольная цифра служит целям
обнаружения ошибок в табельном номере,
возникающих по тем или иным причинам.
Правильное значение контрольной цифры
равно
где
-
значение соответствующих цифр
-
в табельном номере
.
Целям контроля служит и контрольная
сумма, вычисляемая как сумма по
1000000
табельных номеров всех служащих.
Контрольная сумма записывается з поле
"табельный номер" в последней
компоненте файла (эта компонента не
содержит данных о служащем, а служит
только целям контроля). Выполнить
следующие действия над файлом:
а) Проверить файл на синтаксическую правильность табельных номеров. Для каждого нарушения (когда не все символы в табельном номере являются цифрами) печатать:
- порядковый номер компоненты;
- ошибочное значение поля "табельный номер".
б) Проверить правильность значения поля "контрольная
- 25 -
цифра" для каждой компоненты файла. Для каждого нарушения (когда контрольная цифра не соответствует табельному номеру) печатать:
- порядковый номер компоненты;
- значения полей "табельный номер" и "контрольная цифра" (ошибочное и правильное). в) Проверить файл на контрольную сумму - вычисленная при просмотре файла контрольная сумма должна совпадать с контрольной суммой, записанной в последней компоненте файла.
Указание.
Числовое значение цифры
X
равно
.Перевод
табельного номера из символьного
представления в числовое осуществляется
по формуле
.
19. (Обработка файла поставки. - Упорядоченные файлы.) Каждая компонента файла поставки содержит:
N1 - номер поставляемой детали;
N2 - номер поставщика;
К - количество экземпляров детали, поставляемых по договору;)
D - дату (номер месяца и год завершения) поставки. Файл упорядочен лексикографически по ключу (N1,N2). Это означает, что в начале файла записаны компоненты с меньшим значением N1 , а затем - с большим. Если две компоненты имеют одинаковое значение N1 (мы допускаем, что одну и ту же деталь могут поставлять несколько поставщиков), то они записаны в файле по возрастанию значения N2 . Таким образом, компонента с ключом (2,15) предшествует компоненте с ключом (2,50), которая, в свою очередь, предшествует компоненте с ключом (5,1). Будем считать, что на поставку одной и той же детали один поставщик заключает не более одного договора. Другими словами, в файле не может быть двух компонент с одинаковыми ключами.
а) (Устранение повторений.) Используя файл ПОСТАВКИ, сформировать файл ДЕТАЛИ, каждая компонента которого должна содержать:
N1 - номер детали;
К - количество экземпляров детали. Файл ДЕТАЛИ должен быть упорядочен по возрастанию значения поля "номер детали" (без повторений). Значение поля "количество
- 26 -
экземпляров" формируется суммированием соответствующих полей файла ПОСТАВКИ по всем поставщикам этой детали.
б) (Выделение одиночек.) Используя файл ПОСТАВКИ, сформировать файл ОДИНОЧКИ, содержащий сведения о поставках тех деталей, которые поставляются только одним поставщиком.
в) (Выделение серий.) Используя файл ПОСТАВКИ, сформировать файл СЕРИИ,•содержащий сведения о поставках только таких деталей, которые поставляются несколькими поставщиками (т.е. те компоненты, которые не вошли в файл ОДИНОЧКИ).
г) (Исключение.) Имеется файл РАЗРЫВ-ДОГОВОРОВ-НА-ПОСТАВ-КУ, каждая компонента которого содержит:
N1 - номер детали;
N2 - номер поставщика.
Файл упорядочен по ключу ( N1,N2) так же, как и файл ПОСТАВКИ, и не содержит одинаковых компонент. Обновить файл ПОСТАВКИ, исключив из него сведения о поставках по разорванным договорам .
д) (Выборка.) имеется файл ЗАПРОСЫ-О-ПОСТАВКАХ, каждая компонента которого содержит:
N1 - номер детали;
N2 - номер поставщика.
Файл упорядочен по ключу (N1, N2) так же, как и файл ПОСТАВКИ, и не содержит одинаковых компонент. Используя файл ПОСТАВКИ, сформировать файл ВЫБОРКА, содержащий полные сведения только о тех поставках, которые упомянуты в файле ЗАПРОСЫ-0-ПОСТАВКАХ.
е) (Исправление поля.) Имеется файл ВЫПОЛНЕНИЕ-ДОГОВОРОВ -О-ПОСТАВКАХ-I, каждая компонента которого содержит:
N1 - номер детали;
N2 - номер поставщика;
К - количество экземпляров уже поставленных деталей. Файл упорядочен по ключу (N1,N2) так же, как и файл ПОСТАВКИ. • Используя файл ПОСТАВКИ, создать файл НЕДОВЫПОЛНЕНИЕ- ПОСТАВОК, формируя в поле "количество экземпляров" остаток от исходного значения поля. (Сведения о полностью выполненных поставках можно опускать. Учесть, что к выполнению некоторых поставок поставщики могли еще не приступить.)
ж) (Повторяющиеся изменения.) Имеется файл ВЫПОЛНЕНИЕ-ДО-
- 27 -
ГОВОРОВ-0-ПОСТАВКАХ.2, каждая компонента которого содержит:
N1 - номер детали;
N2 - номер поставщика;
D - дату поставки;
К - количество экземпляров уже поставленных деталей.
Файл упорядочен по ключу (N1,N2) так же, как и файл ПОСТАВКИ, но в файле могут быть компоненты с одинаковыми ключами (т.е. договорная поставка могла выполняться многократно частями).
1) Исключить из файла ПОСТАВКИ сведения о полностью выполненных поставках, не корректируя сведений о поставках, выполненных не полностью.
2) Используя файл ПОСТАВКИ, сформировать аналогичный файл КОНТРОЛЬ-НАЧАТЫХ.ПОСТАВОК, помещая в него сведения только о тех поставках, к выполнению которых поставщик приступил. Значение поля "количество экземпляров" заменять на остаток.
3) Обновить файл ПОСТАВКИ, заменяя значение поля "количество экземпляров" на остаток.
з) (Замена компонент.) Имеется файл ПЕРЙЗАКЛЮЧЕНИЯ-ДОГОЗО-РОВ-0-ПОСТАВКАХ, аналогичный файлу ПОСТАВКИ по структуре и упорядоченности компонент. В нем помещены сведения, касающиеся изменения сроков поставок и количества поставляемых деталей. Требуется обновить файл ПОСТАВКИ, учитывая упомянутые изменения.
и) (Слияние.) Имеется файл НОВЫЕ-ДОГОВОРА-О-ПОСТАВКАХ, аналогичный файлу ПОСТАВКИ по структуре и упорядоченности компонент. Обновить файл ПОСТАВКИ, включая в него новые сведения о поставках. Если ключ (N1,N2) некоторой компоненты файла НОВЫЕ-ДОГОВОРА-0-ПОСТАВКАХ совпадает с ключом некоторой компоненты файла ПОСТАВКИ, то в обновленный файл должна быть включена одна объединенная компонента с таким ключом, которая в поле "количество экземпляров" должна содержать сумму, а в поле "дата поставки" - наибольшую из дат.
к) (Соединение компонент.) Имеется файл-СВЕДЕНИЯ-0-ДЕТАЛЯХ, каждая компонента которого содержит:
- номер детали";
- 28 -
- наименование детали;
- цену детали;
- вес детали.
Используя файл ПОСТАВКИ, сформировать новый файл, в котором сведения о каждой поставке дополнены сведениями о поставляемой детали.