Условия задачи сформулированы совершенно неоднозначно.
Либо это недоработка составителей, либо сделано специально для полета фантазии...
1. Абсолютно непонятно зачем в тексте задачи упоминание еженедельного начисления, если в условиях задано "считать что все данные вводятся в пределах только одного месяца"? Т. е. переходы между месяцами учитывать , получается, не нужно а больше разницы между еженедельным и ежемесячным начислением нет. Зачем тогда это условие?
2. "Каждый охранник может работать только в свою смену". Какая смена "своя" для сотрудника? Как должна быть установленя связь между сотрудником и его сменой? Через регистр, через справочник, или вообще смена должна указываться в документе?
3 "Фиксированная сумма" компенсации. Само слово "фиксированная" означает, что сумма не расчитывается, а берется или из базы или вводится пользователем. А тут компенсация именно расчитывается
4. Расчет среднего заработка можно вообще понимать как хочешь. Насчет "ЭТОТ ГОД" уже писали выше, что можно понимать и как прошлый год и как текущий. А еще есть момент с получением рабочих часов за год. Если считать "рабочих часов" как отработанных часов за год, что по логике более правильно, то получается что компенсация зависит только от базы, то есть - дополнительное начисление. А если "рабочих часов" считать как норма рабочих часов, то либо делать компенсацию основным начислением, и получать эту норму из базового периода, либо как-то по-другому извращаться. А ошибка с неправильным отнесением вида расчета к использующим период действия на 1.5 балла потянет.
Вобщем побольше бы таких задач
Большой привет составителям сборника!
Добавлено (18.01.2011, 18:24)
---------------------------------------------
Свой вариант не выкладываю, потому что когда делал прерасчет у меня глюканула платформа и вылетела с дампом, и... ничего не сохранилось.
Может попозже когда-нибудь, когда успокоюсь...