Java:飞机票问题

package com.itheima.test;

import java.util.Scanner;

public class Test1 {

public static void main(String[] args) {

/* 机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。

按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。*/

//分析:

//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.先判断月份是旺季还是淡季

//ctrl + alt + M 自动抽取方法

if (month >= 5 && month <= 10) {

//旺季 //3.继续判断当前机票是经济舱还是头等舱

//ticket = getPrice(ticket, seat, 0.9, 0.85);

ticket = getTicket(ticket, seat, 0.9, 0.85);

} else if ((month >= 1 && month <= 4) || (month >= 11 && month <= 12)) {

//淡季

//ticket = getPrice(ticket, seat, 0.7, 0.65);

ticket = getTicket(ticket, seat, 0.7, 0.65);

} else {

//表示键盘录入的月份是一个非法数据

System.out.println("键盘录入的月份不合法");

}

System.out.println(ticket);

}

public static int getTicket(int ticket, int seat, double v, double v2) {

if (seat == 0) {

//头等舱

ticket = (int) (ticket * v);

} else if (seat == 1) {

//经济舱

ticket = (int) (ticket * v2);

} else {

System.out.println("没有这个舱位");

}

return ticket;

}

//1.我要干嘛?根据舱位和折扣来计算最终的票价

//2.我干这件事,需要什么才能完成?原价 舱位 头等舱的折扣 经济舱的折扣

//3.方法的调用处是否需要继续使用这个结果 需要

/* 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;

}*/

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计一个飞机票管理系统,该系统尽可能模拟实际应用的票务系统,解决实际需求。至少包括如下功能: (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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值