Java寒假作业-个人所得税计算系统

《个人所得税计算系统》设计

  • 需求说明

设计一个简易的个人所得税计算系统,通过输入个人应发工资计算出各个地区的三险(医疗保险、养老保险)一金(公积金)和个人所得税。系统需要实现用户登录、退出、选择地区计算三险一金、个人所得税等功能,并且相关功能要实现循环使用。相关数据如下图所示:

 

相关计算公式:

个人所得税 =(应发工资 - 三险一金 - 5000)* 税率 – 速算扣除数

税后工资 = 应发工资 – 个人所得税

实发工资 = 税后工资 - 三险一金

养老保险 = 应发工资 * 比例

医疗保险 = 应发工资 * 比例

失业保险 = 应发工资 * 比例

公积金 = 应发工资 * 比例

二、实现效果

2.1 用户登录

验证登录账号及密码,验证通过则进入系统,验证不通过则提示错误信息,并重新回到用户登录界面。

2.2 退出系统

选择退出系统则提示退出系统成功并回到系统登录界面。

2.3 计算个人所得税

成功登录系统后,选择城市,并输入应发工资计算出养老保险、医疗保险、失业保险、公积金、个人所得税、税后工资以及实发工资,并将相关数据打印出来,随后重新回到选择城市界面。

 

实现代码:

import java.util.Scanner;

public class T1_IncomeTax {
	public static void main(String[]agrs) {
		Scanner sc = new Scanner(System.in);
		System.out.println("欢迎访问个人所得税计算系统!请先登录......");
		System.out.println("***************用户登录***************");
		String user_name;//用户名
		String user_password;//密码
		do {
			System.out.println("请输入账号:");
			user_name = sc.next();
			System.out.println("请输入密码:");
			user_password = sc.next();
			System.out.println("默认账户名:0000,密码123456");
		}while(!"0000".equals(user_name)||!"123456".equals(user_password));
		//}while((user_name!=0000)&&(user_password!=123456));
		System.out.println("***************恭喜你登录成功!!***************");
		int user_choiceNo = 7;
		while(user_choiceNo!=0000) {
		System.out.println("请选择你所在的城市:");
		System.out.println("1、昆明;2、成都;3、西安;4、北京;5、上海;\r 6、深圳;7、退出系统");
		user_choiceNo = sc.nextInt();
		String user_city = null;//用户所在城市
		double Eendowment_Insurance = 0.08;//养老保险
		double Medical_Insurance = 0.02;//医疗保险
		double Unemployment_Insurance = 0;//失业保险
		double Accumulation_Fund = 0;//公积金
		switch (user_choiceNo) {
		case 1:
			user_city = "昆明";
			Unemployment_Insurance = 0.005;
			Accumulation_Fund = 0.10;
			break;
		case 2:
			user_city = "成都";
			Unemployment_Insurance = 0.01;
			Accumulation_Fund = 0.07;
			break;
		case 3:
			user_city = "西安";
			Unemployment_Insurance = 0.01;
			Accumulation_Fund = 0.08;
			break;
		case 4:
			user_city = "北京";
			Unemployment_Insurance = 0.002;
			Accumulation_Fund = 0.12;
			break;
		case 5:
			user_city = "上海";
			Unemployment_Insurance = 0.005;
			Accumulation_Fund = 0.07;
			break;
		case 6:
			user_city = "深圳";
			Unemployment_Insurance = 0.05;
			Accumulation_Fund = 0.01;
			break;
		case 7:
			System.out.println("您已经退出系统!");
			break;
		default:
			break;
		}
		System.out.println("请输入你的应发工资【"+user_city+"】:");
		double user_income =  sc.nextInt();
		double EI = user_income*Eendowment_Insurance;//计算后的养老保险
		double MI = user_income*Medical_Insurance;//计算后的医疗保险
		double UI = user_income*Unemployment_Insurance;//计算后的失业保险
		double AF = user_income*Accumulation_Fund;//计算后的公积金
		double sl = 0;//税率
		double ss = 0;//速算扣除法
		double gs = 0;//个人所得税
		double sh = 0;//税后工资
		double sf = 0;//实发工资
		
		if(user_income>=0) {
			
		}else if(user_income<=5000){
			sl = 0;
			ss = 0;
		}else if(user_income<=8000){
			sl = 0.03;
			ss = 0;
		}else if(user_income<=17000){
			sl = 0.1;
			ss = 210;
		}else if(user_income<=30000){
			sl = 0.2;
			ss = 1410;
		}else if(user_income<=40000){
			sl = 0.25;
			ss = 2660;
		}else if(user_income<=60000){
			sl = 0.3;
			ss = 4410;
		}else if(user_income<=85000){
			sl = 0.35;
			ss = 7610;
		}else{
			sl = 0.45;
			ss = 15160;
		}
		gs = (user_income-(EI+MI+UI+AF)-5000)*sl-ss;
		sh = user_income - gs;
		sf = sh - (EI+MI+UI+AF);
		System.out.println("***************个人所得税详细信息【"+user_city+"】***************");
		System.out.print("养老保险【"+Eendowment_Insurance*100+"%】:"+EI+"\t");
		System.out.print("医疗保险【"+Medical_Insurance*100+"%】:"+MI+"\n");
		System.out.print("失业保险【"+Unemployment_Insurance*100+"%】:"+UI+"\t");
		System.out.print("公积金【"+Accumulation_Fund*100+"%】:"+AF+"\n");
		System.out.printf("个人所得税:%.2f\n",gs);
		System.out.println("------------------------------------------");
		System.out.printf("税后工资:%.2f\n",sh);
		System.out.printf("实发工资:%.2f\n",sf);
		}
	}
}

 

发布了30 篇原创文章 · 获赞 5 · 访问量 865

猜你喜欢

转载自blog.csdn.net/weixin_44893902/article/details/104106571
今日推荐