机票价格按照淡季旺季,头等舱,经济舱.输入机票原价,月份,头等舱还是经济舱
规则:旺季(5~10月)头等舱9折 经济舱8.5折;淡季(11月到来年4月)头等舱7折,经济舱6.5折
package com.itheima;
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
//1.键盘录入原价 月份 头等舱还是经济舱
Scanner sc = new Scanner(System.in);
System.out.println("请输入机票原价");
int tick = sc.nextInt();
System.out.println("请输入当前月份");
int month = sc.nextInt();
System.out.println("请输入当前购买的舱位 0 头等舱,1 经济舱");
int seat = sc.nextInt();
//2.判断月份是旺季还是淡季
//3.在判断当前机票是头等舱还是经济舱
if (month >= 5 && month <= 10) {
//旺季
tick = getPrice(tick, seat, 0.9, 0.85);
/* if(seat==0){
//头等舱
tick=(int)(tick*0.9);//强制类型转换
}else {
//经济舱
tick=(int)(tick*0.85);
}*/
} else if ((month >= 11 && month <= 12) || (month >= 1 && month <= 4)) {
//淡季
tick = getPrice(tick, seat, 0.7, 0.65);
/* if(seat==0){
//头等舱
tick=(int)(tick*0.7);
}else {
//经济舱
tick=(int)(tick*0.65);
}
*/
} else {
//非法数据
System.out.println("录入月份不合法");
}
//.计算
System.out.println(tick);
}
//有很多重复代码,可以把它抽象成方法 提高复用性
//1.我要干什么 根据舱位和折扣来计算票价
//2.需要什么数据才能完成 原价 舱位 头等舱折扣 经济舱折扣
//3.方法的调用处是否需要继续使用这结果 需要 所以方法一定有返回值
public static int getPrice(int tick, int seat, double v0, double v1) {
if (seat == 0) {
//头等舱
tick = (int) (tick * v0);
} else {
//经济舱
tick = (int) (tick * v1);
}
return tick;
}
}