当前位置: 移动技术网 > IT编程>开发语言>Java > Java出租车计费任务实例分析

Java出租车计费任务实例分析

2020年08月10日  | 移动技术网IT编程  | 我要评论
出租车计费训练任务Java出租车计费训练任务本次任务一起来解决出租车计费问题。某市出租车计费标准如下图所示,请根据此标准完成一个出租车计费模拟功能,能够计算总费用和列出产生费用项目详细情况说明,帮助出租车师傅和乘客了解计费标准。任务概述收费表任务提示结合上述表格,可以得出:总车费=里程费用+低速行驶费(或者等候费)+预约叫车服务费+空驶费+夜间收费+燃油附加费。需要收集的数据有:里程数、低速行驶时长(早晚高峰期行驶时长和其他时间段行驶时长)、是否预约叫车(按四小时为标准)、开始乘坐出租车时

出租车计费训练任务

Java出租车计费训练任务

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

任务概述

收费表在这里插入图片描述

任务提示

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

任务过程

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

代码

// An highlighted block package day02; import java.util.Scanner; public class Demo2_4_7 { /**
 * m=是否预约
 * n=预约时间
 * z=总里程
 * p=基本单价
 * t=总时间
 * dt=低速时间
 * zaowan=是否早晚发高峰
 * ks=是否往返载客
 * y=是否夜间
 * 
 * num=总钱数
 * e=预约费用
 * f=里程费
 * d=低速行驶费用
 * */ public static void main(String[] args) { //总钱数 double num = 0; //预约叫车的费用 double e = 0; //里程费 double f = 0; //基本单价 double p = 2.3; //低速行驶费 double d = 0; //空驶费 double k = 0; //夜间费用 double q = 0; //油费 double o = 1; //-------------预约叫车代码 System.out.println("是否预约叫车"); Scanner yuyue = new Scanner(System.in); Scanner yuyueshijian = new Scanner(System.in); boolean m = yuyue.nextBoolean(); if(m) { System.out.println("你已成功预约"); System.out.println("请输入提前多久预约-超过4h收取服务费6元,4h以下为5元"); int n = yuyueshijian.nextInt();//预约时间 if(n>4) { e = 6; }else e = 5; } //------------输入总乘车时间 Scanner chengcheshijian = new Scanner(System.in); System.out.println("输入你乘车总时间"); int t = chengcheshijian.nextInt(); //------------输入总里程代码 Scanner zonglicheng = new Scanner(System.in); System.out.println("输入你目的地的总里程"); int z = zonglicheng.nextInt(); if(z>3) { f = 13+(z-3)*p; }else { System.out.println("总费用"+f+e+o); } //------------输入是否需要低速行驶和早晚高峰 Scanner shifoudisu = new Scanner(System.in); Scanner disushijian = new Scanner(System.in); Scanner zaowangaofeng = new Scanner(System.in); System.out.println("是否需要低速行驶"); boolean s = shifoudisu.nextBoolean(); if(s) { System.out.println("输入低速行驶时间"); int dt =disushijian.nextInt(); //--是否早晚高峰 System.out.println("是否早晚高峰"); boolean zaowan = zaowangaofeng.nextBoolean(); if(zaowan) { d = dt/5*2*p; }else d = dt/5*p; } //-------------空驶费 Scanner shifouwangfan = new Scanner(System.in); if(z>15) { System.out.println("是否往返载客"); boolean ks = shifouwangfan.nextBoolean(); if(ks) { k = (z-15)*p*1.5; } }else k = 0; //-------------是否夜间驾驶 Scanner shifouyejian = new Scanner(System.in); System.out.println("是否夜间驾驶"); boolean y =shifouyejian.nextBoolean(); if(y) { q = (z-3)*p*0.2; }else q = 0; //总费用 num = e+f+q+d+o+k; System.out.println("总费用="+Math.round(num)+"元"); System.out.println("预约叫车的费用="+Math.round(e)+"元"); System.out.println("里程费="+Math.round(f)+"元"); System.out.println("低速行驶费="+Math.round(d)+"元"); System.out.println("空驶费="+Math.round(k)+"元"); System.out.println("夜间费用="+Math.round(q)+"元"); System.out.println("油费="+Math.round(o)+"元"); } } 

本文地址:https://blog.csdn.net/weixin_44467097/article/details/107899130

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网