首页 > 解决方案 > 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);

}

}

标签: javaif-statementstaticdoublesummary

解决方案


布兰登,没有哨兵循环。在我看来,这就是你想要的程序,

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);
}
}

推荐阅读