Uwakpeter Ответов: 1

Как рассчитать ставки налога на прибыль


Пожалуйста, кто-нибудь может помочь мне с кодом C# для расчета налоговых ставок дохода, подлежащих уплате по платному доходу. Заранее спасибо.

Uwakpeter

Спасибо, я попробую посмотреть, смогу ли я им воспользоваться.

1 Ответов

Рейтинг:
2

Clifford Nelson

private decimal CalculateTax(decimal income)
{
    //•10% on taxable income from $0 to $8,500, plus
    //•15% on taxable income over $8,500 to $34,500, plus
    //•25% on taxable income over $34,500 to $83,600, plus
    //•28% on taxable income over $83,600 to $174,400, plus
    //•33% on taxable income over $174,400 to $379,150, plus
    //•35% on taxable income over $379,150.
    decimal incomeTax = 0;
    CalculateTaxForBracket(379150.0m, .35m, ref incomeTax, ref income);
    CalculateTaxForBracket(174400.0m, .33m, ref incomeTax, ref income);
    CalculateTaxForBracket(83600.0m, .28m, ref incomeTax, ref income);
    CalculateTaxForBracket(34500.0m, .25m, ref incomeTax, ref income);
    CalculateTaxForBracket(8500.0m, .15m, ref incomeTax, ref income);
    CalculateTaxForBracket(0.0m, .10m, ref incomeTax, ref income);

    return incomeTax;
}

private void CalculateTaxForBracket(decimal taxBraketFloor, decimal taxRate, ref decimal calculatedTaxes, ref decimal remainingIncome)
{
    if (remainingIncome > taxBraketFloor)
    {
        calculatedTaxes = calculatedTaxes + (remainingIncome - taxBraketFloor) * taxRate;
        remainingIncome = taxBraketFloor;
    }
}


Uwakpeter

Пожалуйста, вы все еще можете пролить больше света на эти вопросы, я всего лишь новичок, небольшое объяснение параметров может пройти долгий путь! Заранее спасибо.

Clifford Nelson

Комментируемая область была тем, что я нашел при поиске с помощью BING. Я просто использовал то, что нашел, и сделал из этого уравнение. Разве я ответил вам на вопрос, вы не оценили его или не приняли решение.

Uwakpeter

Какой аргумент я должен использовать для taxRate, видя, что мы не можем принять от пользователя, то есть taxRate уже известен, и он имеет разные значения в диапазоне от минимального до максимального.