题目描述
读取一个保留两位小数的浮点数值,表示一个公民的工资。
在公民交纳个人所得税时,不同收入部分需要交纳的税率也是不同的。
请根据下表确定该公民需要交纳的个人所得税是多少。
数据范围
0≤公民工资≤5000
样例
输入样例1:
3002.00
输出样例1:
R$ 80.36
输入样例2:
1700.00
输出样例2:
Isento
输入样例3:
4520.00
输出样例3:
R$ 355.60
样例解释
对于样例1,0~2000.00部分不用缴税,2000.01~3000.00部分按8%的税率缴税,共计1000 * 8% = 80,3000.01~3002.00部分按18%的税率缴税,共计2 * 18% = 0.36,合计80.36。
对于样例2,公民收入未超过2000,所以输出Isento。
对于样例3,0~2000.00部分不用缴税,2000.01~3000.00部分按8%的税率缴税,共计1000 * 8% = 80,3000.01~4500.00部分按18%的税率缴税,共计1500 * 18% = 270,4500.01~4520部分按28%的税率缴税,共计20 * 28% = 5.60,合计355.60。
算法1
C++ 代码
#include <iostream>
using namespace std;
int main()
{
double x;
cin >> x;
if(x <= 2000.00) printf("Isento");
else if(x <=3000.00) printf("R$ %.2lf\n", (x - 2000.00) * 0.08);
else if(x <= 4500.00) printf("R$ %.2lf\n", 80 + (x - 3000.00) * 0.18);
else if(x > 4500.00) printf("R$ %.2lf\n", 80 + 270 + (x - 4500.00) * 0.28);
return 0;
}