JAVA编程,计算公司不同员工工资。 50

公司HR系统需要自动计算每个员工的薪水,该系统有一个公司雇员数据库及相关考勤数据组成,系统必须按照规定的方法准时给雇员支付正确数目的薪水,同时必须扣除相应的税及社保金等。... 公司HR系统需要自动计算每个员工的薪水,该系统有一个公司雇员数据库及相关考勤数据组成,系统必须按照规定的方法准时给雇员支付正确数目的薪水,同时必须扣除相应的税及社保金等。
1.目前有三种工种的人员,基本雇员、计时工作人员和销售人员;
2.基本雇员是由一个固定的收入,每个月的最后一天发放工资;
3.计时工作人员是每个星期一次结算,按小时工作时间进行支付(可以预设定20RMB/H),在第二个星期的周五进行发放。每月最后一个星期的薪资会扣除其税及社保金;
4.销售人员是有一个基本工资和一个提成结算,他们会提交销售发票凭证,系统根据销售发票凭证累计计算销售额度,并根据每个人不同的提成比例来支付提成工资。销售凭证的累计每个月的20日作为周期计算点,薪资在每个月最后一天发放。
5.税率表如下,月收入5,000RMB一下免税,5,000RMB至10,000RMB税率为5%,10,000RMB至15,000RMB为10%,15,000RMB以上为15%;
6.社保金计算方式如下,基本雇员、销售人员为工资总额的7%计算,计时工作人员以工资总额的1%计算;(请用Java语言实现此功能,并用单元测试进行验证)
展开
 我来答
n9...8@33sn.cc
2017-08-05
知道答主
回答量:70
采纳率:0%
帮助的人:8.1万
展开全部
JAVA计算工人工资,参考例子如下:
import java.util.Scanner;
public class Demo00 {
//定义一个三维数组,用于记录每个部门、分支、绩效工资
private static final float[][][] SALARY_OF_PER_HOUR = {
{{10.75f,12.50f,14.50f},{11.75f,14.50f,17.50f}},
{{13.00f,16.00f,18.50f},{15.00f,18.50f,22.00f}},
{{16.75f,18.50f,20.50f},{19.25f,25.00f,30.00f}}
};

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//输入姓名
System.out.println("请输入姓名:");
String name = sc.nextLine();

//输入部门并验证
System.out.println("请输入部门: A,B,C");
char dept = sc.nextLine().charAt(0);
if(dept<'A'||dept>'C')
{
System.out.println("输入有误,系统将退出");
System.exit(0);
}

//输入分支机构并验证
System.out.println("请输入分支机构: 1,2");
char div = sc.nextLine().charAt(0);
if(div<'1'||div>'2')
{
System.out.println("输入有误,系统将退出");
System.exit(0);
}

//输入薪绩表并验证
System.out.println("请输入薪绩表: a,b,c");
char sal = sc.nextLine().charAt(0);
if(sal<'a'||sal>'c')
{
System.out.println("输入有误,系统将退出");
System.exit(0);
}

//输入小时数
System.out.println("请输入本周工作时间(整小时数):");
int hours = sc.nextInt();

float salary = 0;
//每个小时的薪水
float salaryPerHour = SALARY_OF_PER_HOUR[dept-'A'][div-'1'][sal-'a'];

//分别计算40小时内和超过40小时的薪水
if(hours<=40)
{
salary += salaryPerHour*hours;
}
else
{
salary += salaryPerHour*hours+(hours-40)*1.5*salaryPerHour;
}
//输出结果
System.out.println("姓名:\t"+name+"\n部门:\t"+dept+"\n分支机构:\t"+div
+"\n薪绩表:\t"+sal+"\n工作时间:\t"+hours+"\n薪水:\t"+salary);

}
}
//Best wishes!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7b8cbeb
2017-07-28 · TA获得超过452个赞
知道小有建树答主
回答量:521
采纳率:0%
帮助的人:498万
展开全部
光计算代码很容易写,这还要自动计算准时发放,一般项目里有数据库就好说,写几个定时器定时扫描指定时间未结算的员工结算一次工资并记录发放时间。你这如果是要纯java代码模拟这个系统就比较烦,不想写,如果是要计算代码可以给你写一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fy870422
推荐于2017-08-05 · TA获得超过2339个赞
知道大有可为答主
回答量:5564
采纳率:0%
帮助的人:1893万
展开全部
平均工资=工资总数/数字

最低
最高=
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爆笑帅咖丶
2017-08-04
知道答主
回答量:57
采纳率:100%
帮助的人:11万
展开全部
兄弟,你这是业务需求,给点劳务费还有人给你写,你给点财富值,不可能有人理你滴.............
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
胃疼一辈子
2013-01-21 · 超过23用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:23.3万
展开全部
你这个只是逻辑稍微复杂,看着麻烦,写起来条理还是挺清晰的.就是一路判断下去,你这是要个Java的程序?随便找个Java的都能写,你们那没编码的还是这是作业题?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式