1. Неправильный раздел. Нужно либо в:
- Код На Шару, если хочется готовое решение нахаляву
- Работа, если готовы оплатить усилия других
- Начинающим, если делаете сами и просто нужна небольшая помощ (необходимо предоставлять свой код)
2. Не совсем понятна система ввода. Это табель за месяц, например, или просто ввод "за смену"? Ночные часы вводятся отдельно или как-то надо их высчитывать?
3. Ну пусть при вводе указывается кол-во часов и признак дневной/ночной. Тогда расчет оплаты примерно так:
Код:
function GetPaymentPerShift(Hours : Integer; Rate : Currency; IsNight : Boolean) : Currency;
begin
If Not IsNight
Then Result := Rate * Hours // Дневные часы
Else
If Hours > 2
Then Result := Rate * 2 * (Hours-1) // Ночь, > 2 часов
Else Result := Rate * 1.5 * Hours; // Ночь, <= 2 часа
end;