Java编程(3)-买飞机票

先看例题,文章后面有知识点总结 。


public class Test1 {
    public static void main(String[] args) {
        //完成买飞机票的价格计算
        //1.让用户输入机票原价,月份,座位类型
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入机票原价:");
        double money = sc.nextDouble();
        System.out.println("请输入月份(1-12):");
        int month  = sc.nextInt();
        System.out.println("请输入座位类型:");
        String type = sc.next();

        //4.调用方法统计结果
        System.out.println("机票优惠后的价格是:"+calc(money,month,type));
    }

    /**
     * 2.定义方法接收信息,统计优惠后的价格返回。
     */
    public static double calc(double money,int month,String type) {
        //3.判断用户选择的信息情况
        if(month>=5 && month<=10){
            //旺季
            switch(type){
                case"头等舱":
                    money *= 0.9;
                    break;
                case"经济舱":
                    money *= 0.85;
                    break;
                default:
                    System.out.println("您输入的座位类型有误");
                    money = -1;
            }
        }else if(month == 11||month == 12||month>=1 && month<=4){
            //淡季
            switch(type){
                case"头等舱":
                    money *= 0.7;
                    break;
                case"经济舱":
                    money *= 0.65;
                    break;
                default:
                    System.out.println("您输入的座位类型有误");
                    money = -1;
            }
        }else{
            System.out.println("您输入的月份有问题");
            money = -1;
        }
        return money;

    }
}

switch分支结构:判断值匹配

if分支结构:判断区间范围

比如,成绩在80-90之间,获得二等奖;成绩在90-100之间,获得一等奖。这种情况只有用if就行没必要用switch,因为同一区间只有一个值匹配。

设计一个飞机票管理系统,该系统尽可能模拟实际应用的票务系统,解决实际需求。至少包括如下功能: (1)航班基本信息管理包括但不限于以下信息的增填、删除、修改、查找:航班号,航空公司名称,航班起飞、降落、经停地点和时间,航班可售票数等; (2)航班动态管理:发布航班延误、取消等信息;当航班发生延误和取消等变更时,通知已经购该航班机票的乘客,并推荐与该航班具有相同起飞降落地点且未延误的最近航班。 (3)票务管理:客户发出购票申请,如有余票则可以直接购票,如果该航班已经无票,提供预约抢票功能:一旦该航班发生退票,自动购,如有多人预约,按照预约时间顺序按照先到先得原则分配;退票:退已购票。 (4)票务查询:查询某个两个城市间航班情况或某指定航班号的航班情况(如输入航班号,查询起、降时间,起飞、抵达城市,航班票价,所属航空公司,是否有余票等); (5)查询结果排序:票务查询到多个航班信息时,根据用户的选择,分别根据票价、飞行时间、余票数量等信息对相关航班进行排序; (6)航班推荐:输入两个城市名称,假设两城市间无直飞航班且存在多个转机航程,自行设计算法,推荐综合考虑如下因素的最优购票方案:价格、用时、余票数量。[测试数据]可以参考实际航空公司信息或者自行编制虚拟数据作为测试数据。要求城市数目不小于20,航线数目不小于300。 (7)每个组员选择功能(1)、(2)、(3)中的一个,独立设计完成,不同组员要求选择不同功能;若2人一组,可选其中一个功能合作完成。 (8)小组合作完成功能(4)、(5)、(6)中的至少1项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码字神经元

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值