/*某公司需要计算合同员工的工资,工作时间在40小时(包括40小时)的计算规则为:员工工资=工作小时*基本工资。
* 超过40个小时时,工资计算规则为:超时工资=基本工资*1.5.基本工资不能少于8元/每小时,如果小于8元/每小时,则打印出错误。
* 工作时间也不能超过60小时,否则出错。创建一个Corporation类,编写一个以基本工资和工作小时为参数的方法,计算出工资总数或错误信息.
* 在main()方法中每一个员工调用这个方法*/
//运行结果:
//代码部分:
package Lianxi;
public class Corporation {
public double calculateSalary(double basicSalary, int workHours) {
if (workHours <= 40) {
return workHours * basicSalary;
} else if (workHours <= 60) {
double overtimeHours = workHours - 40;
double overtimeSalary = basicSalary * 1.5;
return (40 * basicSalary) + (overtimeHours * overtimeSalary);
} else {
System.out.println("工作时间超过60小时,计算错误");
return -1;
}
}
public static void main(String[] args) {
Corporation corporation = new Corporation();
System.out.println(" "+"基本工资(RMB)"+" "+"工作时数(小时)");
// 员工1的工资计算
double basicSalary1 = 10; // 基本工资为10元/每小时
int workHours1 = 35; // 工作时间为35小时
double totalSalary1 = corporation.calculateSalary(basicSalary1, workHours1);
System.out.println("员工1的工资:" +" "+ totalSalary1+" "+workHours1);
// 员工2的工资计算
double basicSalary2 = 8; // 基本工资为8元/每小时
int workHours2 = 45; // 工作时间为45小时
double totalSalary2 = corporation.calculateSalary(basicSalary2, workHours2);
System.out.println("员工2的工资:" +" "+ totalSalary2+" "+workHours2);
// 员工3的工资计算(错误示例)
double basicSalary3 = 9; // 基本工资为9元/每小时
int workHours3 = 65; // 工作时间为65小时
double totalSalary3 = corporation.calculateSalary(basicSalary3, workHours3);
System.out.println("员工3的工资:"+" " + totalSalary3+" "+workHours3);
}
}