出租车计费模拟功能

某市出租车计费标准如下图所示,请根据此标准完成一个出租车计费模拟功能,能够计算总费用和列出产生费用项目详细情况说明,帮助出租车师傅和乘客了解计费标准

 综合上述表格可以得出总费用=里程费用+低速行驶费(或者等候费)+预约叫车服务费+空驶费+夜间收费+燃油附加费,需要收集的数据有:里程数、低速行驶时长、(早晚高峰行驶时长和其他时间段行驶时长)。是否预约叫车(按四小时为标准)开始乘坐出租车时间,出租车到达终点站时间,结合这些数据和表中提供的标准就可以使用程序计算总车费了

1.声明好程序所需的变量,用于储存数据,请注意数据类型
2.提示用户输入里程,总乘车时间,是否预约叫车(如果是预约叫车,还需确认是否在四小时之内),是否有低速行驶,(如果有,提示输入低速行驶时间,需要考虑早高晚高峰),如果里程超过15公里,需要输入是否往返两公里范围内,决定空驶费。分别将这些用户输入值通过赋值存入对应的变量中
3.根据计费标准和用户输入的数据进行总费用计算处理
4.输出总费用和每个产生费用单项的详细说明

package day01_text1;

import java.util.Scanner;

public class demo03 {
/*
 * 出租车计费模拟功能
*/
 public static void main(String[] args) {
	 Scanner input =new Scanner(System.in);
	double liChengFei=0;//里程费
	double diSuXingShiFei=0;//低速行驶费
	double yuYueJiaoCheFuWuFei=0;//预约叫车服务费
	double kongShiFei=0;//空驶费
	double yeJianShouFei=0;//夜间收费
	double ranYouFuJiaFei=1;//燃油附加费
	double danJia=2.3;//单价
	double zongFeiYong;//总费用
	
	/*
	 * 里程费
	 */
	System.out.println("请输入总里程");
	double zongLiCheng=input.nextDouble();
	if(zongLiCheng>3) {
		liChengFei=13+(zongLiCheng-3)*danJia;
	}else {
		liChengFei=13;
  }
	
	/*
	 * 低速行驶费用
	 */
	System.out.println("是否有低速行驶:true或false");
	     boolean diSu =input.nextBoolean();
	     if(diSu) {
	    System.out.println("请输入低速时行驶时间");
	   double diSuXingShiShiJian=input.nextDouble();
	   System.out.println("是否为早晚高峰:true或false");
	   boolean gaoFeng =input.nextBoolean();
	   if(gaoFeng) {
		   diSuXingShiFei=(diSuXingShiShiJian/5)*danJia*2;
	   }else {
		   diSuXingShiFei=diSuXingShiShiJian*danJia;
	 }
  }
	
	    /*
	     * 预约叫车服务费
	     */
	     System.out.println("是否预约叫车:true或false");
	     boolean yuYue =input.nextBoolean();
	     if(yuYue) {
	    	 System.out.println("请输入提前预约叫车的时间");
	    	 int siXiaoShiZhiNei=input.nextInt();
	    	 if(siXiaoShiZhiNei>4) {
	    		 yuYueJiaoCheFuWuFei=6;
	    	 }else {
	    		 yuYueJiaoCheFuWuFei=5;
	    }
   }
	     
	     /*
	      * 空驶费
	      */
	     if(zongLiCheng>15) {
	    	 System.out.println("是否往返两公里范围内:true或false");
	    	 boolean wangFan=input.nextBoolean();
	    	 if(!wangFan) {
	    		 kongShiFei=(zongLiCheng-15)*danJia*1.5;
	     }
   }
	     
	     /*
	      * 夜间收费
	      */
	     System.out.println("请输入是否为夜间行驶23:00(含)~次日5点(不含):true或false");
	     boolean yeJianXingShi=input.nextBoolean();
	     if(yeJianXingShi) {
	    	 yeJianShouFei=(zongLiCheng-3)*danJia*0.2;//注意哦 因为这里是加收的,所以不是*1.2
	     }
	     
	     
	zongFeiYong=liChengFei+diSuXingShiFei+yuYueJiaoCheFuWuFei+kongShiFei+yeJianShouFei+ranYouFuJiaFei;
	 System.out.println("本次总费用:"+Math.round(zongFeiYong));
	 System.out.println("里程费用:"+Math.round(liChengFei));
     System.out.println("低速行驶费:"+ Math.round(diSuXingShiFei));
	 System.out.println("预约叫车服务费:"+Math.round(yuYueJiaoCheFuWuFei));
	 System.out.println("空驶费:"+Math.round(kongShiFei));
	 System.out.println("夜间收费:"+Math.round(yeJianShouFei));
	 System.out.println("燃油附加费:"+Math.round(ranYouFuJiaFei));
  }
}

代码执行结果

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值