-2

private void btnDisplay_Click(オブジェクト送信者, EventArgs e)

    {
        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」、組合形態を「MEMBER」、販売数量を「100」、雇用年数を「25」と入力した場合。週ごとの支払い額は「$783.30」になるはずです。しかし、最終的に出力として $667.59 が得られます。私が間違っていることはわかりません。

従わなければならないガイドラインは次のとおりです。

フルタイムの代表者は、1 時間あたり 20.00 ドルのレートで週 40 時間働きます。パートタイムの代表者は、1 時間あたり 10.00 ドルのレートで、週 20 時間働きます。一部の代表者は組合に所属し、組合費として毎週 5.25 ドルを支払います。代表者が働いた場合 10年以上は売上の 10% の手数料を受け取り、それ以外の場合は売上の 5% の手数料を受け取ります ウィジェットは 9.25 ドルで販売されます フルタイムの従業員が基本給の 80% を超える売上を達成した場合、ボーナスを受け取る資格があります売上高の 5% すべての代表者は、総収入に基づいて 16% の FICA 税を支払います。

PS これはたくさんの読書であることは知っていますが、これで私を助けてくれれば、私にとってクリスマスの奇跡のようなものになるでしょう.

4

2 に答える 2

0

783.30 という値は、私の計算では間違っています。手で計算する:

(800 (基本) - 5.25 (ユニオン) + 92.5 (コミッション) + 46.25 (ボーナス))*.84 (税金) = 784.14. あなたが言及したガイドとは異なる方法で支払いが決定されない限り、プログラムは正しく実行されており、古いプログラムは間違っていました。

于 2014-12-13T02:42:40.387 に答える