java - Q : 租车计算器 | 使用哨兵值循环
问题描述
我对自己是否遵循这一权利感到困惑,并且是在寻求安慰和一些帮助。所以我的主要问题是我是否遵循我的导师问题:当他说使用哨兵值循环构建它时?
其次,我怎样才能将总数四舍五入到小数点后两位?
如果它有助于我的任务是这样的:
说明:使用哨兵值循环。
询问每个用户:
车辆类型(可能使用字符串以外的其他内容,例如:1 表示经济型,2 表示轿车等) 租用天数 计算(对于每个客户):
租金、税金、到期总额。有三种不同的租金选择:经济 @ 31.76、轿车 @ 40.32、SUV @ 47.56。[注:只考虑全天单位(无小时费率)]。
销售税为总计的 6%。
创建汇总数据:
客户数量 收款总额。此外,包括 IPO、算法和案头检查值(设计文档)。
{我的设计与进展}
包一包;
导入 java.util.*;导入java.lang.Math;
公共课嗯{
int count = 0;
static int days;
static double DailyFee, NontaxTotal, CarType, Total;
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.print("What vehical would you like to rent?\n");
System.out.println("Enter 1 for an economy car\n");
System.out.println("Enter 2 for a sedan car\n");
System.out.println("Enter 3 for an SUV");
CarType = keyboard.nextInt();
if (CarType == 1)
DailyFee=31.76;
else if(CarType == 2)
DailyFee=40.32;
else if(CarType == 3)
DailyFee=43.50;
System.out.print("Please enter the number of days rented. (Example; 3) : ");
days = keyboard.nextInt();
NontaxTotal = (DailyFee * days);
Total = (NontaxTotal * 1.06);
System.out.printf("The total amount due is $" + Total);
}
}
解决方案
布兰登,没有哨兵循环。在我看来,这就是你想要的程序,
import java.util.*;
public class Stack3{
public static void main(String []args){
int count=0;
int days;
double DailyFee=0, NontaxTotal, CarType, Total,FullTotal=0;
Scanner in=new Scanner(System.in);
System.out.println("If there are any customer press 1 else press 0");
int cus=in.nextInt();
// this is sentinel loop
while(cus!=0){
count++;
System.out.print("What vehical would you like to rent?\n");
System.out.println("Enter 1 for an economy car\n");
System.out.println("Enter 2 for a sedan car\n");
System.out.println("Enter 3 for an SUV");
CarType = in.nextInt();
if (CarType == 1)
DailyFee=31.76;
else if(CarType == 2)
DailyFee=40.32;
else if(CarType == 3)
DailyFee=43.50;
System.out.print("Please enter the number of days rented. (Example; 3) : ");
days = in.nextInt();
double x=days;
NontaxTotal = (DailyFee * x);
Total = (NontaxTotal * 1.06);
FullTotal+=Total;
//included 2 decimals only
System.out.printf("The total amount due is $ %.2f \n",Total);
System.out.println("If there are any customer press 1 else press 0");
cus=in.nextInt();
}
System.out.println("Count of customers :- "+count);
System.out.printf("Total of the Day :- %.2f",FullTotal);
}
}
推荐阅读
- c# - ASP.NET Core 2.1 应用程序没有得到正确的 appsettings.json
- regex - 正则表达式匹配 *.sublime-settings 文件
- javascript - 如何使用 JavaScript 向我的性格测验显示结果?
- c++ - C++ 对象默认变量
- syntax - 意外标记附近的 Pascal 语法错误
- jquery - Foundation Sticky 未在隐藏的 div 上正确初始化
- javascript - 对变量、函数及其背后的逻辑有疑问?
- ruby-on-rails - 在 rails 中找不到命令“pg_dump”
- elasticsearch - Elasticsearch - 搜索替代国家代码
- javascript - Ember.js:将香草数组转换为 Ember 数组不起作用