题目:机票价格按照淡季旺季,头等舱和经济舱收费,输入机票原价,月份,头等舱或经济舱 。按照如下规则计算机票价格:旺季(5-10月)头等舱九折,经济舱8.5折,淡季(11-来年4月)头等舱7折,经济舱6.5折
分析:先用else-if条件语句判断是否为旺季,淡季,再在里面嵌套else-if语句判断是否为经济舱,然后计算价格
package text;
import java.util.Scanner;
//import java.util.Random;
public class Ticket {
public static void main(String[] args) {
//机票价格按照淡季旺季,头等舱和经济舱收费,输入机票原价,月份,头等舱或经济舱
//按照如下规则计算机票价格:旺季(5-10月)头等舱九折,经济舱8.5折,淡季(11-来年4月)头等舱7折,经济舱6.5折
//输入票价
System.out.println("please input ticket price");
Scanner sc = new Scanner(System.in);
double ticket = sc.nextInt();
System.out.println("please input month");
int month = sc.nextInt();
System.out.println("please input seat and 头等舱代表1,经济舱代表0");
//头等舱代表1,经济舱代表0
Scanner sc2 = new Scanner(System.in);
int seat = sc2.nextInt();
if (month >= 5 && month <= 10) {
//旺季
// if (seat == 1) {
// //头等舱
// ticket *= 0.9;
// } else if (seat == 0) {
// ticket *= 0.85;
// } else {
// System.out.println("没有这个舱位");
// }
ticket=getTicket(ticket,seat,0.9,0.85);
} else if (month >= 11 || month <= 4) {
//淡季
// if (seat == 1) {
// //头等舱
// ticket *= 0.7;
// } else if (seat == 0) {
// ticket *= 0.65;
// }
// else {
// System.out.println("没有这个仓位");
// }
ticket=getTicket(ticket,seat,0.7,0.65);
}
System.out.println(ticket);
}
//因为有两块代码相似,所以可以写成一个方法
public static double getTicket(double ticket, int seat, double v1, double v0) {
if (seat == 1) {
//头等舱
ticket *= v1;
} else if (seat == 0) {
ticket *= v0;
} else {
System.out.println("没有这个舱位");
}
return ticket;
}
}
注意
构造方法
运算结果