0

質問は次のとおりです

従業員の時間当たりの給与、今週の労働時間数を入力し、週ごとの給与を計算するようにユーザーを促すプログラムを作成します。彼が 40 時間以上働いた場合、彼の 1 時間あたりの給与は、40 時間を超える時間ごとに元の給与の 1.5 倍になります。総給与から、社会保障税に 6%、所得税に 14%、組合に 10 ユーロが取られます。従業員に 2 人以上の子供がいる場合、従業員は健康保険に 35 ユーロを支払います。彼の週給を計算します。

私のコード

#include "stdafx.h"
#include "iostream"
using namespace std;

int main()
{
    double a,b,c,kid;
    cout << "Enter his salary per hour: " << endl;
    cin >> a;
    cout << "Enter the amount of hours he worked this week: " << endl;
    cin >> b;
    cout << "How many kids does he have: " << endl;
    cin >> kid;

    if ( a > 40 ) {
        if (kid > 2) {
            b = (b-40)*1.5+40;
            c = a*b-a*b*20/100-10-35;
        }
        else {
            b = (b-40)*1.5+40;
            c = a*b-a*b*20/100-10;
        }
    }
    else {
        if (kid > 2)
            c = a*b-a*b*20/100-10-35; 
        else 
            c = a*b-a*b*20/100-10;
    }

    cout << c;
    system("pause");
    return 0;
}

私が作成したコードでは、正しい結果が得られません。どこが間違っていますか?

4

1 に答える 1

7

1 文字の無意味な変数名は使用しないでください。そうしないと、次のエラーに気付くでしょう。

if ( a > 40 )

時間数を比較したかったのですが、給与を比較しました。

于 2013-04-07T05:44:33.993 に答える