-1

HR マイレージと経費システムを作成していますが、率を正しく計算する方法を考え出すのに苦労しています。

車、バイク、自転車の2つの料金があります。10,000マイルまではワンレート、10,000マイル以上はワンレート。例として車の料金を見てみましょう。現在、10,000 マイルまでは 1 マイルあたり 45 ペンス、それ以降は 1 マイルあたり 25 ペンスです。

だから私はビジネスマイレージを保持し、それを追加し続けるための変数を持っていますが、どうすれば料金の変更を処理できますか? 例: BusinessMiles = 9990、請求済みマイレージ = 100。したがって、ビジネス マイルが 10,000 未満であり、ビジネス マイルと制限の差より少ないことを確認する必要があります。これは 10 マイル @ 0.45 と 90 マイル @ 0.25 です。

クリスのポインタを使用すると、私の出力は次のとおりです。

//calculate mileage
var businessMilesClaimed = "100";
var currentMilesClaimed = "12110";

if (currentMilesClaimed < 10000)
    {
        var claimedAmount = +businessMilesClaimed + +currentMilesClaimed;

        if (claimedAmount > 10000)
            {
                var claimCalc1 = (claimedAmount - 10000) * 0.25;
                var claimCalc2 = (10000 - currentMilesClaimed) * 0.45;
                var claimResult = +claimCalc1 + +claimCalc2;
            }
        else
            {
            var claimResult = businessMilesClaimed * 0.45;
            }
    }
else
    {
        var claimResult = businessMilesClaimed * 0.25;
    }
4

1 に答える 1

4

これは、あなたが確実に取り組むことができたもののようです。そのため、ここに役立つ疑似コードをいくつか示します。

milage := 11,192.
// milage is the amount of miles driven..

if(milage is greater than 10000)
     // If they've driven more than ten thousand miles, calculate the difference.
     milage := 10000.
     changeOverMilage := milage - 10000.
else
      // Otherwise, there is no changeOverMilage so set it to 0.
     changeOverMilage = 0.

// Calculate the cost.
cost := (milage * 0.45) + (changeOverMilage * 0.25) 
于 2013-10-10T14:49:17.640 に答える