纳税计算——案例2_7

2023-11-09

纳税计算——案例2_7

题目

在我国,个人所得税是基于纳税人的情况和应征收人计算的。纳税人情况共分为三种:单身纳税人、已婚纳税人和家庭纳税人。另外,对于不同情况的纳税人,其税率是分档计算的,我国2008年的个人所得税税率如下表所示。

税率 单身纳税人 已婚纳税人 家庭纳税人
10% 低于等于6000元 低于等于12000元 低于等于10000元
15% 6001~27950 元 12001~46700元 10001~37450元
27% 27951~67700元 46701~112850元 37451~96700元
30% 67701~141250元 112851~171950元 96701~156600 元
35% 141251元及以上 171951元及以上 156601元及以上

思路

我们首先判断三类人,然后再根据不同的类型计算。这里推荐将判断、计算分成不同的方法。

  • 判断:
    直接用if-else进行判断,判断后进入不同的方法。
public static void judge(){ //判断家庭类型
        if (status == 1) 
            ans1();
        else if(status==2)
            ans2();
        else
            ans3();
    }
  • 计算:
    计算其实特别简单,就是一道初中的数学题,这里不再过多赘述。注意要确定好税率的范围,也是用if-else。

  • 使用多个方法:

    我们一般不喜欢把所有代码全塞到main方法里而是按功能拆分成不同方法,详细见CSDN博客:类、方法和对象


本题答案&代码

import java.util.Scanner;
import javax.lang.model.util.ElementScanner6;

public class Example2_7 {
    private static int status=0;
    private static double tax=0.0;
    private static double income = 0;

    public static void data() {
        System.out.println("请输入纳税人的类型:1-单身,2-已婚,3-家庭。");
        Scanner inStatus = new Scanner(System.in);
        status = inStatus.nextInt(); //输入纳税人的类型
        System.out.println("请输你的可纳税收入:");
        Scanner inIncome = new Scanner(System.in);
        income = inStatus.nextDouble(); //输入收入
        judge();
    }

    public static void judge(){ //判断家庭类型
        if (status == 1) 
            ans1();
        else if(status==2)
            ans2();
        else
            ans3();
    }
    
    public static void ans1() { //单身
        if (income <= 6000)
            tax = income * 0.1;
        else if (income <= 27950)
            tax = 6000 * 0.1 + (income - 6000) * 0.15;
        else if (income <= 67700)
            tax = 6000 * 0.1 + (27950 - 6000) * 0.15 + (income - 27950) * 0.27;
        else if (income <= 141250)
            tax = 6000 * 0.1 + (27950 - 6000) * 0.15 + (67700 - 27950) * 0.27 + (income - 67700) * 0.3;
        else
            tax = 6000 * 0.1 + (27950 - 6000) * 0.15 + (67700 - 27950) * 0.27 + (141250 - 67700) * 0.3
                    + (income - 141250) * 0.35;
    }

    public static void ans2() { //已婚
        if (income <= 12000)
            tax = income * 0.1;
        else if (income <= 46700)
            tax = 12000 * 0.1 + (income - 12000) * 0.15;
        else if (income <= 112850)
            tax = 12000 * 0.1 + (46700 - 12000) * 0.15 + (income - 46700) * 0.27;
        else if (income <= 171950)
            tax = 12000 * 0.1 + (46700 - 12000) * 0.15 + (112850 - 46700) * 0.27 + (income - 112850) * 0.3;
        else
            tax = 12000 * 0.1 + (46700 - 12000) * 0.15 + (171950 - 46700) * 0.27 + (171951 - 171950) * 0.3
                    + (income - 171950);
    }

    public static void ans3() { //家庭
        if(income<=10000)
            tax = income * 0.1;
        else if(income<=37450)
            tax=1000*0.1+(income-10000)*0.15;
        else if(income<=96700)
            tax = 1000 * 0.1 + (37450 - 10000) * 0.15 + (income - 37450) * 0.27;
        else if(income<=15600)
            tax = 1000 * 0.1 + (37450 - 10000) * 0.15 + (96700 - 37450) * 0.27 + (income - 96700)*0.3;
        else
            tax = 1000 * 0.1 + (37450 - 10000) * 0.15 + (96700 - 37450) * 0.27 + (15600 - 96700) * 0.3
                    + (income - 15600) * 0.35;
    }
    
    public static void main(String[] args) {
        Example2_7 input = new Example2_7();
        input.data();
        System.out.println("纳税人需要缴的税额为:"+tax+"元人民币");
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

纳税计算——案例2_7 的相关文章

随机推荐

  • STM32学习---时钟系统

    1 时钟树 STM32的时钟系统比较复杂 我们主要通过时钟树来了解单片机内部的时钟配置情况 时钟树可以从开发指南中找到 以f1为例 学习一下他的树 明确几个缩写定义 AHB 先进高速总线 APB1 先进设备总线1 APB2 先进设备总线2
  • ORM总结(单表,一对多,多对多)

    一 表记录的增删改查 单表操作 1 添加 时间的格式必须写成YYYY MM DD 2 删除 filter筛选多条记录 返回的是QuerySet集合对象 3 修改 这三种都是类 objects 4 查询 values是具体拿一个字段 不再拿整
  • Linux内核memcpy的不同实现

    目录 1 概述 2 高级SIMD和浮点寄存器介绍 2 NEON指令 2 1 VLDR 2 2 VLDM 2 3 VSTR 2 4 VSTM 3 ARM架构程序调用寄存器使用规则 3 1 ARM寄存器使用规则 3 2 NEON寄存器使用规则
  • 【Python】range函数

    range函数 Python3 range 函数返回的是一个可迭代对象 类型是对象 而不是列表类型 所以打印的时候不会打印列表 res range 6 print res gt gt gt range 0 6 打印出来的不是列表 Pytho
  • 2.1 主窗口

    Qt用QMainWindow和相关的类来管理主窗口 QMainWindow继承自QWidget类 以下介绍几种常用操作 1 close 关闭当前窗口 2 hide 隐藏当前窗口 相当于 setVisible false 设置窗口可见或是不可
  • CocosCreator3.0加载远程图片资源

    在微信小游戏平台 需要获取了微信头像 对于这个需求 需要这样来做 获取微信用户信息 得到微信小游戏头像的http地址 在Cocos引擎使用loadRemote来加载 这其中的问题在于 使用loadRemote加载时获得的对象和2 x的版本不
  • redis服务停止(NOAUTH Authentication required)问题处理

    redis服务停止报NOAUTH Authentication required错误 处理方法 命令处理 redis cli a 密码 p 6379 shutdown 脚本处理 进入脚本文件 stop命令增加密码 完整配置文件 bin ba
  • 【统计模型】生存分析基本知识介绍

    目录 一 生存分析介绍 1 生存分析用途 2 传统方法在分析随访资料时的困难 1 生存时间和生存结局都是我们关心的因素 2 存在大量失访 3 显然 将失访数据无论是算作死亡还是存活都不合理 3 生存分析的优劣势 1 优势 2 劣势 4 生存
  • 机器学习经典算法,原理及代码实现

    机器学习知识体系 岭回归和LASSO回归 朴素贝叶斯 支持向量机 Logistic回归 K 近邻算法 线性回归 决策树 EM最大期望算法 Apriori算法 自适应增强 Adaboost 算法 PageRank算法
  • java.lang.ClassCastException: com.sun.proxy.$Proxy0 cannot be cast to java.sql.Connection异常问题解决

    Connection proxy Connection Proxy newProxyInstance Connection class getClassLoader Connection class getInterfaces new In
  • 数据结构——线性结构(7)——链队列的实现

    链队列的实现 头文件 这部分文件实现我们之前所使用的queue类 它主要的原理为 后进后出 LILO ifndef Queue h define Queue h 类型 Queue
  • 使用vue-video-player,播放rtmp直播流

    可直接在新的页面复制使用 测试可用
  • 对cpu与load的理解及线上问题处理思路解读

    前言 2019双11还有不到2个月就要到来了 大家也都知道服务器在大促期间由于流量的增加势必导致机器的cpu与load变高 因此趁着这个时机正好再好好学习 巩固一下cpu和load的概念 为双11做准备的同时也是增加自己的技能储备 不过cp
  • 华为OD机试真题- 宜居星球改造计划-2023年OD统一考试(B卷)

    题目描述 2XXX年 人类通过对火星的大气进行宜居改造分析 使得火星已在理论上具备人类宜居的条件 由于技术原因 无法一次性将火星大气全部改造 只能通过局部处理形式 假设将火星待改造的区域为row column的网格 每个网格有3个值 宜居区
  • Unity Shader入门精要第七章 基础纹理渐变纹理

    Unity系列文章目录 文章目录 Unity系列文章目录 前言 一 渐变纹理是什么 参考 前言 尽管在一开始 我们在渲染中使用纹理是为了定义一个物体的颜色 但后来人们发现 纹理 其实可以用于存储任何表面属性 一种常见的用法就是使用渐变纹理来
  • 静态链表的基础操作(详解)

    目录 一 闵版 1 完整代码 2 运行结果 二 钦版 1 结构体的创建 2 静态链表的初始化 3 尾插法 4 按值插入 5 删除元素 6 打印静态链表 7 摧毁链表 8 完整代码 9 运行结果展示 一 闵版 1 完整代码 include
  • Flutter视频播放、Flutter VideoPlayer 视频播详解

    1 添加依赖 视频播放 video player 1 0 1 2 播放视频前的准备 2 1 网络访问权限 在 ios 目录下的 info plist 清单文件中配置 iOS设置的http网络访问权限
  • Netty搭建WebSocket服务端

    Netty服务端 1 引入依赖
  • mysql两个时间相减

    pre class sql SELECT TIMESTAMPDIFF MINUTE NOW flowExpireDate AS minsRemaining FROM FlowDealOrders WHERE SN 1721502100011
  • 纳税计算——案例2_7

    纳税计算 案例2 7 题目 在我国 个人所得税是基于纳税人的情况和应征收人计算的 纳税人情况共分为三种 单身纳税人 已婚纳税人和家庭纳税人 另外 对于不同情况的纳税人 其税率是分档计算的 我国2008年的个人所得税税率如下表所示 税率 单身