Предмет: Информатика, автор: GrishaFilippov1

Программисты как и все любят получать зарплату. Она может варьироваться от большого количества факторов. Например, от количества отработанных часов, бонусов от закрытия проектов, количества проработанных лет, должности, дополнительных обязанностей, премий, штрафов и т.д.

Гриша следит за своим заработком и старается перепроверять правильность начисления заработной платы. Однако, параметров для расчета довольно много, поэтому каждый раз делать расчет на калькуляторе не удобно. К сожалению, у Гриши постоянно не хватает времени, чтобы автоматизировать этот процесс, поэтому он попросил вашей помощи.

Заработная плата является вещественным числом. Она зависит от параметров: a – минимальный размер оплаты труда (МРОТ), b – от надбавки за должность, c – от коэффициента дополнительных обязанностей, d – от количества лет, проработанных в компании, e – от количества отработанных часов в месяц, f – от штрафов за опоздания, g – от бонусов за закрытия проекта, h – от месячных премий.

Обычно Гриша работает 40 часов в неделю, но иногда ему приходится задерживаться на работе. Согласно трудовому кодексу РФ заработная плата за переработанные часы (для Гриши сверх 168 часов в месяц) оплачивается:

За первые 2 часа не менее, чем в полуторном размере
За последующие часы - не менее чем в двойном размере
Количество отработанных за месяц часов e=i+j+k, где i – количество часов, отработанных по стандартной ставке, j – по ставке x1.5, k – по ставке x2.

Для расчета заработной платы Гриша использовал формулу:
Помогите написать программу

Приложения:

GrishaFilippov1: Примечание
Гарантируется, что ответ всегда существует и не превышает 10^18.
GrishaFilippov1: баллы закончились немогу задать вопрос((( еще присалали 1 программу
GrishaFilippov1: я смог отредактировать прошлую работу посмотрите пожалуйста
GrishaFilippov1: https://znanija.com/task/37672383
GrishaFilippov1: Ок
GrishaFilippov1: спасибо

Ответы

Автор ответа: BobbyFresnel
1

// PascalABC.NET

begin

 var a, b, c, d, e, f, g, h, i, j, k: integer;

 Read(a, b, c, d, e, f, g, h);

 k := Max(e - 170, 0);

 e -= k;

 j := Max(e - 168, 0);

 i := e - j;

 Write(c * (a + b) * (1 + Sqrt(Sqrt(d))) / 168 *

     (i + 1.5 * j + 2 * k) - f + 1.1 * (g + h):0:6)

end.


GrishaFilippov1: Большое спасибо
GrishaFilippov1: помогите вот это если не сложно https://znanija.com/task/37672383
Похожие вопросы
Предмет: Математика, автор: Никаретин