java需求: 机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。 按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。
时间: 2024-10-17 10:10:05 浏览: 90
在Java中计算机票价格,你需要创建一个程序,包括以下几个步骤:
1. 定义一个`FlightPriceCalculator`类,它包含方法来处理价格计算。
```java
public class FlightPriceCalculator {
public double calculatePrice(double originalPrice, int month, String cabinType) {
// 根据月份和舱位类型判断是否为旺季或淡季
boolean isSeasonal = month >= 5 && (month <= 10 || month >= 11 && month <= 4); // 季节判断
double discount;
if (cabinType.equals("头等舱")) {
if (isSeasonal) {
discount = 0.9; // 旺季头等舱9折
} else {
discount = 0.7; // 淡季头等舱7折
}
} else { // 经济舱
if (isSeasonal) {
discount = 0.85; // 旺季经济舱8.5折
} else {
discount = 0.65; // 淡季经济舱6.5折
}
}
return originalPrice * discount;
}
}
```
2. 用户可以创建`FlightPriceCalculator`对象并调用`calculatePrice`方法输入参数:
```java
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入机票原价:");
double originalPrice = scanner.nextDouble();
System.out.println("请输入月份(1-12):");
int month = scanner.nextInt();
System.out.println("请选择舱位类型(头等舱/economy):");
String cabinType = scanner.next();
FlightPriceCalculator calculator = new FlightPriceCalculator();
double discountedPrice = calculator.calculatePrice(originalPrice, month, cabinType);
System.out.printf("调整后的价格为: %.2f元", discountedPrice);
}
```
阅读全文