частная пустота btnDisplay_Click (объект отправителя, EventArgs е)Что я делаю неправильно с математикой?
{
string EmploymentStatus = Convert.ToString(txtES.Text).ToLower();
string UnionStatus = Convert.ToString(txtMS.Text).ToLower();
double TotalSales = Convert.ToDouble(txtSales.Text) * 9.25;
double Years = Convert.ToDouble(txtYears.Text);
double uniondues;
double FICA = 0;
double bonus = 0;
double WPay = 0;
double TotalComission = 0;
if (EmploymentStatus == "full")
{
WPay = 800.00;
}
else if (EmploymentStatus == "part")
{
WPay = 200.00;
}
else
{
MessageBox.Show("Error, please enter either FULL or PART");
}
if (UnionStatus == "member")
{
uniondues = 5.25;
WPay = WPay - uniondues;
}
else if (UnionStatus == "non-member")
{
uniondues = 0;
}
else
{
MessageBox.Show("Error, please enter either MEMBER or NON-MEMBER");
}
if ((EmploymentStatus == "full") && (TotalSales > 640))
{
bonus = TotalSales * .05;
}
else if (EmploymentStatus == "part")
{
bonus = 0;
}
if (Years >= 10)
{
TotalComission = TotalSales * .10;
}
else if (Years < 10)
{
TotalComission = TotalSales * .05;
}
else
{
MessageBox.Show("Error, please enter a valid number");
}
FICA = WPay * .16;
WPay = WPay - FICA;
lblqWPay.Text = "The weekly pay for the employee is: " + (WPay.ToString("C"));
lblqTS.Text = "The total sales for this employee is: " + (TotalSales.ToString("C"));
lblqCom.Text = "The comission for this employee is: " + (TotalComission.ToString("C"));
lblqBonus.Text = "The bonus for this employee is: " + (bonus.ToString("C"));
Когда я вхожу в состояние занятости как «FULL» и статус союза как «член», с количеством проданного, как «100», и годы используется как «25». Еженедельная заработная плата должна составлять «$ 783,30». Но в конечном итоге я получаю $ 667,59 за выпуск. Я не вижу, что я делаю неправильно.
Вот руководящие принципы, которые должны следовать:
Полные представителей рабочего времени 40 часов в неделю в размере $ 20,00 в час представителей Неполных работать 20 часов в неделю в размере $ 10,00 в час Some представители принадлежат профсоюзу и платят 5,25 долл. США в неделю в профсоюзных сборах Если представитель проработал 10 лет и более, они получают комиссию в размере 10% от продаж, в противном случае они получают комиссию в размере 5% от продаж Виджеты на продажу за 9,25 долл. США Если полный рабочий день имеет продажи, которые составляют более 80% от их базовой платы, они имеют право на бонус в размере 5% от их продаж. Al l представители выплачивают налог на FICA в размере 16% исходя из их общей прибыли
P.S. Я знаю, что это много, но если вы можете помочь мне с этим, это будет похоже на рождественское чудо для меня.
Debugger? Попробуй, это хорошо. – MarcinJuraszek
Используя отладчик, пройдите через код, глядя на каждый промежуточный результат. Сравните каждый результат с тем, что, по вашему мнению, должно быть правильным результатом в этот момент. Когда вы достигнете утверждения, в котором эти два варианта не совпадают, вы нашли свою ошибку (которая будет либо в коде, либо в вашей спецификации). –
Ха-ха, я пробовал это, я случайно вставил не то, что делает на форум. smdh. но, несмотря на это, он все еще ошибается, я добавил Wpay = wpay + bonus ;, wpay = wpay + total Commission ;, и ближайший я получаю его до 784.14. idk, что еще не так, математика правильная. но idk – SprJD7903