gpt4 book ai didi

java - 关于 Java 嵌套 if 语句的问题

转载 作者:行者123 更新时间:2023-12-02 04:28:09 25 4
gpt4 key购买 nike

所以我老师在白板上写的问题是:输入产品名称、数量、价格。计算总金额。总金额大于2000折扣5%,总金额大于5000折扣10%,大于10000折扣20%

我知道你必须采用这种格式。

if (cost > 2000)
discount = 0.05;

我会在之前输入正确的内容

String prodName;
int qty, price;
double cost;
double discount;

我知道我放在那里的内容是错误的,但我认为这就是在执行嵌套 if 语句之前它的格式。我真的需要这方面的帮助。我不需要得到这个问题的答案,因为这是最大程度的填鸭式。我只需要一些指示和指南来找出该怎么做。

最佳答案

首先,您需要彻底阅读您的书。显然this can be a good start 。首先学习如何if-then有效,下一个 if-then-else最后if-then-else if-then-else 。现在让我们分析一下您的问题:

Input product Name, Quantity, price. Compute the total amount. If total amount is greater than 2000 discount is 5%, if total amount is greater than 5000 discount is 10%, if greater than 10000 discount is 20%.

显然您将设置一个变量,我们将其命名为 discount ,检查一些条件。作为解释,假设总金额大于 10000,那么您将设置 discount = 20% 。但要小心,当总金额大于10000时,也会导致总金额大于5000或2000也!那你要设置discount = 10%discount = 5%分别?不,你不是。

因此,为了解决您的问题,如果已经匹配了更高优先级的条件,您将不会检查任何其他条件。因此我们将执行以下操作:

discount;
total_amount = some Cost you calculated/inputted
if(total_amount > 10000) {
discount = 0.2;
} else if(total_amount > 5000) {
discount = 0.05;
} else if(total_amount > 2000) {
discount = 0.01;
} else {
discount = 0.00; // no discount for you coz total_amount less than or equal to 2000
}

现在这里发生了什么?如果第一个测试表达式是 true ( total_amount > 10000 ),它执行大括号 { } 内的代码就在它的下面,没有其他 block 被执行。但如果第一个测试表达式是 false ,它检查第二个测试表达式 ( total_amount > 5000 )。如果第二个测试表达式是 true ,它执行大括号内的语句 { }就在它的下面,没有其他 block 被执行。这个过程仍在继续。如果所有的测试表达式都是false ,里面的代码 else执行,程序控制跳转到if-else下面.

当你完全理解if-else那么你可以通过多种不同的方式解决这个问题。祝你好运。

关于java - 关于 Java 嵌套 if 语句的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31878181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com