java基础语法题

请编写程序,根据个人收入和起征点计算个人所得税。

个人所得税按月收入扣除起征点后的余额:

1500 元以内的部分按 3% 征税;

1500 ~ 4500 元的部分按 10% 征税;

4500 ~ 9000 元的部分按 20% 征税;

9000 ~ 35000 元的部分按 25% 征税;

35000 ~ 55000 元的部分按 30% 征税;

55000 ~ 80000 元的部分按 35% 征税;

80000 元以上的部分按 45% 征税。

例如:某程序员月收入为11052.3 元。假设起征点为 5000 元,则扣除起征点以后的余额 6052.3 元需要纳税。其中前 1500 元按 3% 纳税 45 元,1500 ~ 4500 之间的 3000 元按 10% 纳税 300 元,4500 ~ 9000 元之间的 1552.3 元按 20% 纳税 183.50 元,应纳税款合计为:

1500 × 3% + (4500-1500) × 10% + (6052.3-4500) × 20% =

0 + 45 + 300 + 310.46 = 655.46(元)

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        double ysr = in.nextDouble();
        double qzd = in.nextDouble();
        if(ysr<=qzd) {
            double s = 0;
            System.out.printf(String.format("%.2f", s));
        }
        else if(ysr-qzd<=1500){
            double s = (ysr-qzd)*0.03;
            System.out.printf(String.format("%.2f", s));
        }
        else if((ysr-qzd>1500)&&(ysr-qzd<=4500)){
            double s = 1500*0.03+(ysr-qzd-1500)*0.10;
            System.out.printf(String.format("%.2f", s));
        }
        else if((ysr-qzd>4500)&&(ysr-qzd<=9000)){
            double s = 1500*0.03+(4500-1500)*0.10+(ysr-qzd-4500)*0.20;
            System.out.printf(String.format("%.2f", s));
        }
        else if((ysr-qzd>9000)&&(ysr-qzd<=35000)){
            double s = 1500*0.03+(4500-1500)*0.10+(9000-4500)*0.20+(ysr-qzd-9000)*0.25;
            System.out.printf(String.format("%.2f", s));
        }
        else if((ysr-qzd>35000)&&(ysr-qzd<=55000)){
            double s = 1500*0.03+(4500-1500)*0.10+(9000-4500)*0.20+(35000-9000)*0.25+(ysr-qzd-35000)*0.30;
            System.out.printf(String.format("%.2f", s));
        }
        else if((ysr-qzd>55000)&&(ysr-qzd<=80000)){
            double s = 1500*0.03+(4500-1500)*0.10+(9000-4500)*0.20+(35000-9000)*0.25+(55000-35000)*0.30+(ysr-qzd-55000)*0.35;
            System.out.printf(String.format("%.2f", s));
        }
        else if(ysr-qzd>80000){
            double s = 1500*0.03+(4500-1500)*0.10+(9000-4500)*0.20+(35000-9000)*0.25+(55000-35000)*0.30+(80000-55000)*0.35+(ysr-qzd-80000)*0.45;
            System.out.printf(String.format("%.2f", s));
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值