Добавление оплаты за сверхурочную работу

0

программа работает, но я не уверен, как получить валовой платеж, чтобы добавить оплату сверхурочной работы, если условие установлено, мне сказали, чтобы установить овернайт в ноль на декларации. Есть ли способ изменить оплату сверхурочной работы соответственно после выполнения условия if? например, overtimepay = 50, поэтому формула для полной оплаты теперь будет hw * hp+ 50

#include<iostream>
using namespace std;
int main()

{
    float ftax, stax, SDI, SS, hw, hp, pay, netpay, gp, OvertimePay = 0;

    cout << "please enter the hoursWorked: ";
    cin >> hw;

    cout << "---------------------" << endl;
    cout << "please enter the hourlyPay: ";
    cin >> hp;

    gp = hw * hp + (OvertimePay);
    ftax = gp*.10;
    stax = gp*.08;
    SDI = gp*.01;
    SS = gp*.06;
    netpay = gp - (ftax + stax + SDI + SS);

    cout << " grosspay = " << gp << endl;
    cout << "---------------------" << endl;
    cout << " federal taxes = " << ftax << endl;
    cout << "---------------------" << endl;
    cout << " state taxes = " << stax << endl;
    cout << "---------------------" << endl;
    cout << " SDI = " << SDI << endl;
    cout << "---------------------" << endl;
    cout << " Social Securities = " << SS << endl;
    cout << "---------------------" << endl;
    cout << " netpay = " << netpay << endl;
    cout << "---------------------" << endl;

    if(hw > 40)

        cout << "OvertimePay = " << (hw - 40) * hp * 0.5 << endl;

    system("pause");

}
  • 1
    Я предлагаю вам отойти от кода на минуту и разработать пример с карандашом и бумагой.
  • 0
    Не имеет отношения: в моих самых смелых мечтах мое федеральное налоговое обязательство составляет 10%. Это на 24% меньше . И FICA составляет 7,65% (х2, но ваш босс должен заплатить вторую половину). Ваш инструктор должен обновить свой материал = P
Теги:

2 ответа

0
Лучший ответ

Это один из способов сделать это. Вы никогда не устанавливали значение переменной OvertimePay равным чему-либо, кроме 0. Вы должны переместить условие if в логике программы и затем соответствующим образом установить переменную перед вычислением брутто-оплаты (gp).

#include<iostream>
using namespace std;
int main()

{
float ftax, stax, SDI, SS, hw, hp, pay, netpay, gp, OvertimePay = 0;

cout << "please enter the hoursWorked: ";
cin >> hw;

cout << "---------------------" << endl;
cout << "please enter the hourlyPay: ";
cin >> hp;

if(hw > 40) {
   OvertimePay = (hw - 40) * hp * .5;
} else {
  OvertimePay = 0;
}


gp = (hw * hp) + OvertimePay;
ftax = gp*.10;
stax = gp*.08;
SDI = gp*.01;
SS = gp*.06;
netpay = gp - (ftax + stax + SDI + SS);

cout << " grosspay = " << gp << endl;
cout << "---------------------" << endl;
cout << " federal taxes = " << ftax << endl;
cout << "---------------------" << endl;
cout << " state taxes = " << stax << endl;
cout << "---------------------" << endl;
cout << " SDI = " << SDI << endl;
cout << "---------------------" << endl;
cout << " Social Securities = " << SS << endl;
cout << "---------------------" << endl;
cout << " netpay = " << netpay << endl;
cout << "---------------------" << endl;



}
  • 0
    спасибо Эндрю Л, что сработало
  • 0
    else является избыточным, поскольку переменная OvertimePay инициализируется в объявлении, поэтому } else { OvertimePay = 0; } можно удалить.
0

Сначала необходимо рассчитать оплату сверхурочной работы, прежде чем вывести валовую оплату:

if(hw > 40)
    OvertimePay = (hw - 40) * hp * 0.5;

gp = hw * hp + OvertimePay;
  • 0
    У меня уже есть оплата за сверхурочную работу, но я хочу заменить вышеприведенную формулу на валовую заработную плату, чтобы она выкладывала цифры валовой заработной платы, включая сверхурочные, а затем все налоги, пока моя программа просто дает мне валовую заработную плату без сверхурочных
  • 0
    Понял. Неправильно прочитанный вопрос. Смотрите мое редактирование.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню