标签:status 税款 tax System 计算 income input Scanner
import java.util.*;
class Main {
public static void main(String args[]){
//Create a Scanner
Scanner input = new Scanner(System.in);
//Prompt the user to enter filing status
System.out.print("(0-single filer, 1-married jointly,\n)" +
"2-married separately, 3-head fo household\n" +
"Enter the filling status: ");
int status = input.nextInt();
//Prompt the user to enter taxable income
System.out.print("Enter the taxable income: ");
double income = input.nextDouble();
//Compute tax
double tax = 0;
if(status == 0){//Compute tax for ingle filers
if(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;
}else{
tax = 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;
}else{
tax = 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 <= 104425){
tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (68525 - 33950) * 0.25 + (income - 68525) * 0.28;
}else if(income <= 186475){
tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (68525 - 33950) * 0.25 + (104425 - 68525) * 0.28
+ (income - 104425) * 0.33;
}else{
tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (68525 - 33950) * 0.25 + (104425 - 68525) * 0.28
+ (186475 - 104425) * 0.33 + (income - 186474) * 0.35;
}
}
else if(status == 3){
if(income <= 19950){
tax = income * 0.10;
}else if(income <= 45500){
tax = 19950 * 0.10 + (income - 19950) * 0.15;
}else if(income <= 117450){
tax = 19950 * 0.10 + (45500 - 19950) * 0.15 + (income - 45500) * 0.25;
}else if(income <= 190200){
tax = 19950 * 0.10 + (45500 - 19950) * 0.15 + (117450 - 45500) * 0.25
+ (income - 117450) * 0.28;
}else if(income <= 372950){
tax = 19950 * 0.10 + (45500 - 19950) * 0.15 + (117450 - 45500) * 0.25
+ (190200 - 117450) * 0.28 + (income - 190200) * 0.33;
}else{
tax = 19950 * 0.10 + (45500 - 19950) * 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(0);
}
//Display the result
System.out.println("Tax is " + (int)(tax * 100) / 100.0);
}
}
标签:status,税款,tax,System,计算,income,input,Scanner 来源: https://www.cnblogs.com/doudou-20123/p/16254925.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。