Пример 9-3.Положим, в течение месяца работники бригады выполняли различные виды работ (пусть три), сведения о которых хранятся в трех файлах с именами Rab1, Rab2, Rab3. Кроме того, имеется справочный файл тарифов работников Tarif. Необходимо создать файл Ved ведомости на оплату, где будут собраны сведения о всех работниках и сделаны необходимые вычисления.
файл
Tarif
файл
Rab1
файл
Rab2
файл
Rab3
tb
im
tr
tb
ch
tb
ch
tb
ch
таб №
имя
тариф
таб №
часы
таб №
часы
таб №
часы
Иван
Петр
Лена
Вася
Олег
массив
MT
массив
MR
tb
im
tr
tb
ch
файл
Ved
tb
im
ch
zr
nl
vd
таб №
имя
часы
з
арплата
налог
выдать
Лена
390,0
2610,0
Олег
130,0
870,0
Вася
227,5
1522,5
Иван
390,0
2610,0
Петр
78,0
522,0
всего
1215,5
8134,5
Рис.
9.2
Последовательность действий:
1. Предварительно создать на диске и заполнить файлы с именами Rab1, Rab2, Rab3 и Tarif.
2. Последовательно считать все три файла в массив Mr[1..15].
3. Отсортировать массив по табельному номеру (по полю mr.tb). Повторяющиеся номера объединить (часы суммируются) в одну строку.
4. Считать файл Tarifв массив Mt[1..6]. Исходя из индивидуальных тарифов, рассчитать зарплату, налог и сумму к выдаче каждого и записать в файл Ved.
5. Вывести из Ved полученные данные на экран вместе с общей суммой зарплат бригады.
Исходные данные и результаты показаны на рис 9.2. Над колонками приведены названия полей, принимающих соответствующие данные.
Программа Vedom реализует процесс обработки данных. Программу занесения данных в фалы Rab1, Rab2, Rab3, Tarifнапишите сами.
program VEDOM;{программа к примеру 9-3}
uses crt;
type{создание типов записей}
rab=record tb,ch:integer end;{тип записи Работы}
tar=record tb,tr:integer; im:string[4] end; {тип записи Тарифы}