7-4 计算税率 (17 分)

7-4 计算税率 (17 分)

美国联邦个人所得税是根据申报情况和应纳税所得额计算的。有四种申报情况:单身申报、已婚联合申报、已婚单独申报、户主申报。税率每年都不一样。下表即为假定税率计算方法,例如,某人单身申报,应纳税收入为10,000,则计算方法为:8,350的部分按10%计税,剩余的1,650的部分按158,350×10%+1,650×151,082.5。

你要写一个计算个人所得税的程序。程序应该首先输入申报状态和应纳税所得额并计算税款。其中,输入申报状态用整型数表示,0表示单身申报,1表示已婚联合申报,2表示已婚单独申报,3表示户主申报。应纳税所得金额用实型数表示。下表为具体的税率。

计算税率1.jpg

输入格式:

请在一行中输入申报情况和应纳税收入金额,其中,输入申报情况用整型数表示,正确取值范围为03;应纳税金额为实型数,正确取值范围为0+∞。

输出格式:

(1)当输入数据合法时,输出应纳税金额,实型数; (2)当输入数据非法时,输出字符串“Wrong Format”

输入样例1:

在这里给出一组输入。例如:

0 0
结尾无空行

输出样例1:

在这里给出相应的输出。例如:

0.0
结尾无空行

输入样例2:

在这里给出一组输入。例如:

0 100000
结尾无空行

输出样例2:

在这里给出相应的输出。例如:

21720.0
结尾无空行

输入样例3:

在这里给出一组输入。例如:

5 100000
结尾无空行

输出样例3:

在这里给出相应的输出。例如:

Wrong Format
结尾无空行

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner input = new Scanner(System.in);
		int number1;
		double number2;
		number1 = input.nextInt();//number1表示申报情况
		number2 = input.nextDouble();//number2表示收入
		double money;//表示应纳税的数额
		
		if(number2>=0)
		{
			if(number1 == 0)//单身申报
			{
				if(number2<8350)
				{
					money = number2*0.1;//835
				}
				else if(number2 <= 33950)
				{
					money = 835 + 0.15*(number2-8350);
				}
				else if(number2 <= 82250)
				{
					money = 4675 + 0.25*(number2 - 33950);
				}
				else if(number2 <= 171550)
				{
					money = 16750 + 0.28*(number2 - 82250);
				}
				else if(number2 <= 372950)
				{
					money = 41754 + 0.33*(number2 - 171550);
				}
				else 
				{
					money = 108216 + 0.35* (number2 - 372950);
				}
				System.out.println(money);
			}
			
			else if(number1 == 1)//已婚联合申报
			{
				if(number2<=16700)
				{
					money = number2*0.1;
				}
				else if(number2 <= 67900)
				{
					money = 1670 + 0.15*(number2-16700);
				}
				else if(number2 <= 137050)
				{
					money = 9350 + 0.25*(number2 - 67900);
				}
				else if(number2 <= 208850)
				{
					money = 26637.5 + 0.28*(number2 - 137050);
				}
				else if(number2 <= 372950)
				{
					money = 46741.5 + 0.33*(number2 - 208850);
				}
				else 
				{
					money = 100894.5 + 0.35* (number2 - 372950);
				}
				System.out.println(money);
			}
			
			else if(number1 == 2)//已婚单独申报
			{
				if(number2<=8350)
				{
					money = number2*0.1;
				}
				else if(number2 <= 33950)
				{
					money = 835 + 0.15*(number2-8350);
				}
				else if(number2 <= 68525)
				{
					money = 4675 + 0.25*(number2 - 33950);
				}
				else if(number2 <= 104425)
				{
					money = 13318.75 + 0.28*(number2 - 68525);
				}
				else if(number2 <= 186475)
				{
					money = 23370.75 + 0.33*(number2 - 104425);
				}
				else 
				{
					money = 50447.25 + 0.35* (number2 - 186475);
				}
				System.out.println(money);
			}
			else if(number1 == 3)//户主申报
			{
				if(number2<=11950)
				{
					money = number2*0.1;
				}
				else if(number2 <= 45500)
				{
					money = 1195 + 0.15*(number2-11950);
				}
				else if(number2 <= 117450)
				{
					money = 6227.5 + 0.25*(number2 - 45500);
				}
				else if(number2 <= 190200)
				{
					money = 24215 + 0.28*(number2 - 117450);
				}
				else if(number2 <= 372950)
				{
					money =44585 + 0.33*(number2 - 190200);
				}
				else 
				{
					money = 104892.5 + 0.35* (number2 - 372950);
				}
				System.out.println(money);
			}
			else 
			{
				System.out.println("Wrong Format");
			}
			
		}
		
		else
			System.out.println("Wrong Format");
				
	}//main

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值