Java求飞机票价

文章讲述了如何使用Java编程语言实现飞机票价格的计算,根据不同季节(旺季5-10月,淡季11月至次年4月)和舱位(头等舱和经济舱)提供相应的折扣。给出了两种方法实现:一种是逐行判断,另一种是封装成getPrice函数。
摘要由CSDN通过智能技术生成

飞机票价格根据淡季旺季、头等舱和经济舱收费,输入机票原价、月份和头等舱或经济舱。
按照如下规则计算机票价格:旺季(5-10月份)头等舱9折,经济舱8.5折,淡季(11月份到来年4月份)头等舱7折,经济舱6.5折。

方法一:

public static void main(String[] args) {
        //1.键盘录入,机票原价、月份、头等舱/经济舱
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入机票原价");
        int ticket = sc.nextInt();
        System.out.println("请输入月份");
        int month = sc.nextInt();
        System.out.println("请输入当前购买的舱位 0 头等舱 1 经济舱");
        int seat = sc.nextInt();
        //2.先判断月份是淡季还是旺季
        if (month >= 5 && month <= 10) {
            //旺季
            //3.继续判断机票是头等舱还是经济舱
            if (seat == 0) {
                //4.根据实际情况计算相应价格
                ticket = (int) (ticket * 0.9);
            } else if (seat == 1) {
                ticket = (int) (ticket * 0.85);
            } else {
                System.out.println("没有这个舱位");
            }
        } else if ((month >= 1 && month <= 4) || (month >= 11 && month <= 12)) {
            //淡季
            if (seat == 0) {
                //将票价强制转换为整型
                ticket = (int) (ticket * 0.7);
            } else if (seat == 1) {
                ticket = (int) (ticket * 0.65);
            } else {
                System.out.println("没有这个舱位");
            }
        } else {
            System.out.println("输入月份格式有误");
        }
        System.out.println(ticket);
    }

 方法二:

public static void main(String[] args) {
        //1.键盘录入,机票原价、月份、头等舱/经济舱
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入机票原价");
        int ticket = sc.nextInt();
        System.out.println("请输入月份");
        int month = sc.nextInt();
        System.out.println("请输入当前购买的舱位 0 头等舱 1 经济舱");
        int seat = sc.nextInt();
        //2.先判断月份是淡季还是旺季
        if (month >= 5 && month <= 10) {
            //旺季
            //3.继续判断机票是头等舱还是经济舱
            ticket = getPrice(ticket, seat, 0.9, 0.85);
        } else if ((month >= 1 && month <= 4) || (month >= 11 && month <= 12)) {
            //淡季
            ticket = getPrice(ticket, seat, 0.7, 0.65);
        } else {
            System.out.println("输入月份格式有误");
        }
        System.out.println(ticket);
    }

    public static int getPrice(int ticket, int seat, double v0, double v1) {
        if (seat == 0) {
            //将票价强制转换为整型
            ticket = (int) (ticket * v0);
        } else if (seat == 1) {
            ticket = (int) (ticket * v1);
        } else {
            System.out.println("没有这个舱位");
        }
        return ticket;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值