Постановка задачи

Основная задача.

1. Написать функцию Load для считывания из текстового файла (например, Workers.txt) информации о работниках и заработной плате. В первой строке файла находится количество рабочих дней в месяце. Далее для каждого работника в файле записано по две строки: в первой – фамилия работника, во второй – два числа – количество отработанных дней и месячный оклад. После загрузки файла вывести на экран количество считанных записей.

2. Написать функцию Calc для вычисления зарплаты каждого работника по формуле

с округлением значения до двух десятичных знаков. Функция должна также подсчитать итоговую зарплату.

3. Написать функцию Save для выгрузки в файл ведомости заработной платы в виде следующей таблицы.

 

+----------------------+---+----------+----------+

| Фамилия |Дни| Оклад | Зарплата |

+----------------------+---+----------+----------+

|Петров | 15| 6300.00| 3937.50|

|Иванов | 24| 5600.00| 5600.00|

| ... |...| ... | ... |

+----------------------+---+----------+----------+

|Итого | 23687.50|

+-------------------------------------+----------+

 

Ширина колонок: «Фамилия» – 40 символов, «Дни» – 3 символа, «Оклад» и «Зарплата» – по 10 символов. Фамилию необходимо выравнивать по левому краю, цифры – по правому. Зарплату выводить с двумя десятичными знаками.

4. Написать функцию SortByName для сортировки списка работников по алфавиту методом пузырьковой сортировки.

5. В основной программе: загрузить список из файла Workers.dat, рассчитать зарплату, выгрузить ведомость в файл Pay.txt, отсортировать список по алфавиту, выгрузить ведомость в файл ByName.txt.