对于我的 CS1 类(class),我们必须用 Java 编写一个程序,要求用户输入以下内容; - 餐厅账单金额 - 给定 3 个选项,他们愿意给多少小费
然后程序将计算原始账单金额、小费、税金和最终账单金额 - 打印在屏幕上。
我能够提示并打印所有这些内容,但数学是错误的......有人可以建议吗?这对我来说是新的,所以我不确定我到底错过了什么或错过了什么。尝试过很多不同的事情,这就是我现在的处境。谢谢!
我尝试过添加和删除括号、更改声明方式、查找语法错误
/*Description: This program calculates a restaurant bill.
*/
import java.util.Scanner;
public class MiniProject3 {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.print("What is the check amount? ");
double checkAmount = keyboard.nextDouble();
System.out.print("What type of tip would you like to leave? ");
System.out.print("Enter 1 for good tip (20%) ");
System.out.print("Enter 2 for average tip (15%) ");
System.out.print("Enter 3 for poor tip (10%) ");
int tipChoice = keyboard.nextInt();
double grandTotal;
double taxTotal = (checkAmount * 0.07);
double subTotal = (checkAmount + taxTotal);
if (tipChoice == 1)
grandTotal = 0.20 * subTotal;
if (tipChoice == 2)
grandTotal = 0.15 * subTotal;
else
grandTotal = 0.10 * subTotal;
System.out.print("total check: $" + checkAmount);
System.out.println();
System.out.print("tax: $" + taxTotal);
System.out.println();
System.out.print("tip: $" + (grandTotal - subTotal));
System.out.println();
System.out.print("final bill: $" + grandTotal);
}
}
现在没有错误消息 - 但数学还差得很远。
最佳答案
有两种方法可以解决这个问题:
将计算出的小费选择保存在另一个变量中,然后将该变量添加到小计中以获得总计。
只需将 20% 乘以 1.20,而不是所有提示的 0.20,即可直接得出总计。
关于Java 作业(初学者)- 我认为我的数学或声明有问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57781773/