2016-09-13 6 views
-2

私は0-5000については15000数値を分割して範囲に収まるようにする方法!

  1. 番号iが5001-10000のために、任意の割引
  2. を適用する必要はありません、私は
  3. 5000+4500=9500)ので10%割引を適用しなければならず、10000上記のために私が持っている必要があり割引を適用する20%5000+4500+4000=13500

どのようにして特定の範囲に収まるように数値を分割できますか?

+1

私は5000に10%の割引を適用することそれは米国の税ブラケットのようなものだ9500 –

+0

@DarshanMehta作る方法がわからない、あなたが最初の '5000'を支払いますそして、2番目の '5000'の10%割引を得るので、あなたはその部分に対して' 4500 'を支払うだけです。総額は「9500」です。 – azurefrog

+0

これを13500 – prasad

答えて

1

それは次のように行うことができる:

int amount = ... 
int total = 0; 
if (amount > 10_000) { 
    // Apply 20 % on the amount above 10 K 
    total += (amount - 10_000) * 0.8d; 
    amount = 10_000; 
} 
if (amount > 5_000) { 
    // Apply 10 % on the amount above 5 K 
    total += (amount - 5_000) * 0.9d; 
    amount = 5_000; 
} 
// Apply 0 % on the rest 
total += amount; 
関連する問題