*3.13(金融应用:计算税款)程序清单3-5给出了计算单身登记人税款的源代码。将程序清单3-5补充完整,从而计算所有登记的婚姻状态的税款

  • 题目
    • 题目描述
    • 程序清单3-5
  • 代码

题目

题目描述

*3.13(金融应用:计算税款)程序清单3-5给出了计算单身登记人税款的源代码。将程序清单3-5补充完整,从而计算所有登记的婚姻状态的税款

程序清单3-5

import java.util.Scanner;public class QingDan {public static void main(String[] args) {// Create a ScannerScanner input = new Scanner(System.in);// Prompt the user to enter filing statusSystem.out.println("(0-single filer, 1-married jointly or " +"qualifying widow(er), 2-married separately, 3-head of " +"household) Enter the filing status:");int status = input.nextInt();// Prompt the user to enter taxable incomeSystem.out.println("Enter the taxable income:");double income = input.nextDouble();// compute taxdouble tax = 0;if (status == 0) {   // Compute tax for single filersif (income <= 8350)tax = income * 0.10;else if(income <= 33950)tax = 8350 * 0.10 + (income - 8350) * 0.15;else if(income <= 82250)tax = 8350 * 0.10 + (income - 8350) * 0.15 +(income - 33950) * 0.25;else  if(income <= 171550)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(82250 - 33950) * 0.25 + (income - 82250) * 0.28;else  if(income <= 372950)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(82250 - 33950) * 0.25 +(171550 - 82250) * 0.28 +(income - 171550) * 0.33;elsetax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(82250 - 33950) * 0.25 +(171550 - 82250) * 0.28 +(372950 - 171550) * 0.33 + (income - 372950) * 0.35;}else if(status == 1){  // Left as an exercise// Compute tax for married file jointly or qualifying widow(er)}else if(status == 2){  // Left as an exercise}else if(status == 3){  // Left as an exercise}else{System.out.println("Error: invalid status");System.exit(1);}// Display the resultSystem.out.println("Tax is " + (int)(tax * 100) / 100.0);}
}

代码

import java.util.Scanner;public class Test3_13 {public static void main(String[] args) {// Create a ScannerScanner input = new Scanner(System.in);// Prompt the user to enter filing statusSystem.out.println("(0-single filer, 1-married jointly or " +"qualifying widow(er), 2-married separately, 3-head of " +"household) Enter the filing status:");int status = input.nextInt();// Prompt the user to enter taxable incomeSystem.out.println("Enter the taxable income:");double income = input.nextDouble();// compute taxdouble tax = 0;if (status == 0) {   // Compute tax for single filersif (income <= 8350)tax = income * 0.10;else if(income <= 33950)tax = 8350 * 0.10 + (income - 8350) * 0.15;else if(income <= 82250)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(income - 33950) * 0.25;else  if(income <= 171550)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(82250 - 33950) * 0.25 + (income - 82250) * 0.28;else  if(income <= 372950)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(82250 - 33950) * 0.25 +(171550 - 82250) * 0.28 +(income - 171550) * 0.33;elsetax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(82250 - 33950) * 0.25 +(171550 - 82250) * 0.28 +(372950 - 171550) * 0.33 + (income - 372950) * 0.35;}else if(status == 1){if (income <= 16700)tax = income * 0.10;else if(income <= 67900)tax = 16700 * 0.10 + (income - 16700) * 0.15;else if(income <= 137050)tax = 16700 * 0.10 + (67900 - 16700) * 0.15 +(income - 67900) * 0.25;else  if(income <= 208850)tax = 16700 * 0.10 + (67900 - 16700) * 0.15 +(137050 - 67900) * 0.25 + (income - 137050) * 0.28;else  if(income <= 372950)tax = 16700 * 0.10 + (67900 - 16700) * 0.15 +(137050 - 67900) * 0.25 +(208850 - 137050) * 0.28 +(income - 208850) * 0.33;elsetax = 16700 * 0.10 + (67900 - 16700) * 0.15 +(137050 - 67900) * 0.25 +(208850 - 137050) * 0.28 +(372950 - 208850) * 0.33 + (income - 372950) * 0.35;}else if(status == 2){if (income <= 8350)tax = income * 0.10;else if(income <= 33950)tax = 8350 * 0.10 + (income - 8350) * 0.15;else if(income <= 68525)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(income - 33950) * 0.25;else  if(income <= 208850)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(68525 - 33950) * 0.25 + (income - 68525) * 0.28;else  if(income <= 372950)tax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(68525 - 33950) * 0.25 +(208850 - 68525) * 0.28 +(income - 208850) * 0.33;elsetax = 8350 * 0.10 + (33950 - 8350) * 0.15 +(68525 - 33950) * 0.25 +(208850 - 68525) * 0.28 +(372950 - 208850) * 0.33 + (income - 372950) * 0.35;}else if(status == 3){if (income <= 11950)tax = income * 0.10;else if(income <= 45500)tax = 11950 * 0.10 + (income - 11950) * 0.15;else if(income <= 117450)tax = 11950 * 0.10 + (45500 - 11950) * 0.15 +(income - 45500) * 0.25;else  if(income <= 190200)tax = 11950 * 0.10 + (45500 - 11950) * 0.15 +(117450 - 45500) * 0.25 + (income - 117450) * 0.28;else  if(income <= 372950)tax = 11950 * 0.10 + (45500 - 11950) * 0.15 +(117450 - 45500) * 0.25 +(190200 - 117450) * 0.28 +(income - 190200) * 0.33;elsetax = 11950 * 0.10 + (45500 - 11950) * 0.15 +(117450 - 45500) * 0.25 +(190200 - 117450) * 0.28 +(372950 - 190200) * 0.33 + (income - 372950) * 0.35;}else{System.out.println("Error: invalid status");System.exit(1);}// Display the resultSystem.out.println("Tax is " + (int)(tax * 100) / 100.0);}
}

Java黑皮书课后题第3章:*3.13(金融应用:计算税款)程序清单3-5给出了计算单身登记人税款的源代码。将程序清单3-5补充完整,从而计算所有登记的婚姻状态的税款相关推荐

  1. Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字

    Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字 题目 代码 结果 题目 都在上面 代码 import java.math.B ...

  2. Java黑皮书课后题第10章:*10.16(被2或3整除)找出所有被2或3整除的有50个十进制位数的前10个数字

    10.16(被2或3整除)找出所有被2或3整除的有50个十进制位数的前10个数字 法一 破题 代码 运行结果 法二 破题 代码 运行结果 法一 破题 本题通过基本数据类型无解(求不出来,不是没有解) ...

  3. Java黑皮书课后题第10章:*10.10(Queue类)10.6节给出一个Stock类。设计一个名为Queue的类用于存储整数。像栈一样,队列保存元素。在栈中,元素后进先出。队列中元素先进先出

    10.10(Queue类)10.6节给出一个Stock类,设计一个名为Queue的类用于存储整数 题目 程序 破题 代码 Test10.java Test10_Queue.java UML 题目 程序 ...

  4. Java黑皮书课后题第3章:**3.27(几何:点是否在三角形内)假设一个平面上有一个直角三角形。编写程序,提示用户输入一个点的x坐标和y坐标,然后判断这个点是否在该三角形内

    **3.27(几何:点是否在三角形内)假设一个平面上有一个直角三角形.编写程序,提示用户输入一个点的x坐标和y坐标,然后判断这个点是否在该三角形内 题目 题目描述 破题 运行示例 代码 题目 题目描述 ...

  5. Java黑皮书课后题第7章:**7.24(仿真:优惠券收集问题)优惠券收集问题是一个经典的统计问题。编写程序,模拟要得到四张不同花色的牌所需要的选取次数,然后显示选中的四张牌

    **7.24(仿真:优惠券收集问题)优惠券收集问题是一个经典的统计问题.编写程序,模拟要得到四张不同花色的牌所需要的选取次数,然后显示选中的四张牌 题目 题目描述与运行示例 破题:花色与数字 代码 题 ...

  6. Java黑皮书课后题第10章:*10.1(Time类)设计一个名为Time的类。编写一个测试程序,创建两个Time对象(使用new Time()和new Time(555550000))

    Java黑皮书课后题第10章:*10.1设计一个名为Time的类.编写一个测试程序,创建两个Time对象 题目 程序 代码 Test1.java Test1_Time.java 运行结果 UML 题目 ...

  7. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  8. Java黑皮书课后题第10章:**10.25(新的字符串split方法)String类中的split方法会返回一个字符串数组,该数组是由分隔符分隔开的子串构成的

    Java黑皮书课后题第10章:**10.25(新的字符串split方法) 题目 代码 运行实例 题目 代码 public class Test25 {public static String[] sp ...

  9. Java黑皮书课后题第10章:*10.13(几何:MyRectangle2D类)定义MyRectangle2D类

    Java黑皮书课后题第10章:10.3 题目 程序 代码 Test13.java Test13_MyRectangle2D.java 运行 UML 题目 程序 Test13.java:测试程序 Tes ...

  10. Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中

    Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中 题目 程序说明 题目槽点 代码:Test2_BMI.java 运行实例 题目 程序说明 Test2_BMI.java ...

最新文章

  1. oracle日志备份少数据库,oracle 账号锁定日志Oracle数据库全量备份恢复和部分备份恢复...
  2. python读取txt文件并写入excel-Python读excel生成数据存入txt文件
  3. php禁用cookie后session设置方法分析
  4. 2017年5个网络行业快速发展技术趋势
  5. Suricata的初始化脚本
  6. GoCD notes
  7. win 系统 32X- 64X 任意安装方法
  8. 根文件系统定制【ZT】
  9. BZOJ 4826: [Hnoi2017]影魔 单调栈 主席树
  10. Appium 元素查找(一)
  11. 【每日算法Day 62】LeetCode 815. 公交路线
  12. C语言编程题:阶乘计算
  13. 为什么SICP要讨论那么多的初等数学
  14. Windows11系统下解压文件后缀为.tar(.gz)的压缩文件
  15. javafx设置图片透明度(饱和度,亮度同理)
  16. 重磅 | 死磕 Elasticsearch 方法论认知清单(2021年国庆更新版)
  17. easypoi 合并单元格 横向 纵向
  18. vcs dump vpd的方法
  19. 华为手机锁屏下拉怎么设置_华为手机怎么设置会滚动的锁屏文字?设置步骤超简单,一看就会...
  20. 重装、删除、卸载ArcGIS的注意的事项

热门文章

  1. 单机mysql能支撑起10w的qps_高并发redis - 读写分离支撑qps10w+
  2. 阿里巴巴DevOps实践指南 | 数字化转型下,DevOps的根本目标是什么?
  3. 阿里巴巴DevOps实践指南 | 为什么DevOps的必然趋势是BizDevOps?
  4. 手机淘宝轻店业务 Serverless 研发模式升级实践
  5. 游戏关卡中的类型运用:《LOOP》的无限可能
  6. 次世代手游美术资源优化干货分享
  7. sqlserver2010兼容sqlserver2008解决方案
  8. 大学的软件测试怎么学
  9. 归档日志满导致ORA-13516错误,AWR报表不能自动收集
  10. 提高SQL查询效率(SQL优化)