Java 买机票

机票价格按照淡季旺季,头等舱,经济舱.输入机票原价,月份,头等舱还是经济舱
规则:旺季(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;

    }

}

                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值