JAVA 7-1 sdut-sel-4 计算工资数 某公司标准上班时间是120小时,每小时工钱是20元, 如果上班时间超出了120小时,超出部分每小时按2倍工资发放。请编写程序计算员工月工资。 输入格式: 输入一个员工的工作小时数。 输出格式: 输出这个员工的工资数。如果输入的工作小时数<=0,则输出0。
时间: 2024-02-17 21:02:21 浏览: 40
好的,以下是Java代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int hours = sc.nextInt();
sc.close();
if (hours <= 0) {
System.out.println(0);
return;
}
int salary;
if (hours <= 120) {
salary = hours * 20;
} else {
salary = 120 * 20 + (hours - 120) * 40;
}
System.out.println(salary);
}
}
```
首先读入员工的工作小时数,如果小于等于0,则输出0。
如果工作小时数小于等于120,那么按照每小时20元的标准工资计算;否则,前120小时按照20元计算,超出部分按照40元计算。最后输出计算得到的工资数。
相关问题
7-1 sdut-sel-4 计算工资数 分数 15 作者 周雪芹 单位 山东理工大学 某公司标准上班时间是120小时,每小时工钱是20元, 如果上班时间超出了120小时,超出部分每小时按2倍工资发放。请编写程序计算员工月工资。 输入格式: 输入一个员工的工作小时数。 输出格式: 输出这个员工的工资数。如果输入的工作小时数<=0,则输出0。用Java
好的,下面是Java代码实现:
```java
import java.util.Scanner;
public class SalaryCalculator {
public static void main(String[] args) {
final int STANDARD_HOURS = 120; // 标准上班时间,单位为小时
final int HOURLY_WAGE = 20; // 每小时工钱,单位为元
Scanner scanner = new Scanner(System.in);
System.out.print("请输入本月实际上班时间(单位:小时):");
int actualHours = scanner.nextInt();
scanner.close();
int salary; // 员工月工资
if (actualHours <= 0) {
salary = 0;
} else if (actualHours <= STANDARD_HOURS) {
salary = actualHours * HOURLY_WAGE;
} else {
int overtimeHours = actualHours - STANDARD_HOURS;
salary = STANDARD_HOURS * HOURLY_WAGE + overtimeHours * HOURLY_WAGE * 2;
}
System.out.println("员工月工资为:" + salary + "元");
}
}
```
代码解析:
1. 与上一个问题的代码基本相同,唯一的区别是增加了对输入小时数小于等于0的特判,此时输出员工月工资为0。
注意:
1. 在实际应用中,可能还需要增加对输入的合法性判断,例如输入非数字或负数等情况;
2. 可以使用 `System.out.printf()` 方法格式化输出,使输出结果更加美观。
R7-4 sdut-oop-6 计算各种图形的周长(多态)
好的,我可以帮你解答这个问题。
计算各种图形的周长可以使用多态来实现。多态是指同一个方法名可以在不同的类中具有不同的实现方式。在这个问题中,我们可以定义一个抽象类 Shape,它包含一个方法 getPerimeter(),用于计算图形的周长。然后,我们可以创建不同的子类,每个子类都实现 getPerimeter() 方法以计算其特定类型的图形的周长。
下面是一个示例代码:
```python
# 定义 Shape 抽象类
class Shape:
def getPerimeter(self):
pass
# 定义 Circle 子类
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def getPerimeter(self):
return 2 * 3.14 * self.radius
# 定义 Square 子类
class Square(Shape):
def __init__(self, side):
self.side = side
def getPerimeter(self):
return 4 * self.side
# 定义 Triangle 子类
class Triangle(Shape):
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def getPerimeter(self):
return self.a + self.b + self.c
# 测试
circle = Circle(10)
print("圆的周长:", circle.getPerimeter())
square = Square(5)
print("正方形的周长:", square.getPerimeter())
triangle = Triangle(3, 4, 5)
print("三角形的周长:", triangle.getPerimeter())
```
输出:
```
圆的周长: 62.800000000000004
正方形的周长: 20
三角形的周长: 12
```
在上面的代码中,我们定义了 Shape 抽象类和三个子类 Circle、Square 和 Triangle。每个子类都实现了 getPerimeter() 方法以计算其特定类型的图形的周长。在主程序中,我们创建了一个 Circle 对象、一个 Square 对象和一个 Triangle 对象,并分别调用它们的 getPerimeter() 方法来计算它们的周长。
希望这个示例代码能够帮助你理解如何使用多态来计算各种图形的周长。如果你有更多的问题,请随时问我。