尝试编写源代码,但失败。
发布于 2022-11-04 01:51:54
我想会是这样的。我随机地放了这个量。
int amount = 500;
double pay = 0;
if(amount > 1000){
pay = 40+(amount*0.01);
} else if(amount > 100 && amount < 1000){
pay = 5+(amount*0.05);
} else if(amount > 10 && amount < 100){
pay = amount*0.1;
} else if(amount < 10){
pay = 1;
}
System.out.println(pay+"$")发布于 2022-11-04 01:58:44
public double getCharge(int check_amount) {
if (check_amount < 10) {
return 1;
} else if (check_amount < 100) {
return 0.1 * check_amount;
} else if (check_amount < 1000) {
return 5 + 0.05 * check_amount;
} else if (check_amount > 1000) {
return 40 + 0.01 * check_amount;
}
return 0;
}如果从最低条件开始,则可以忽略If语句中有两个条件。
主要是:
public static void main(String[] args) {
System.out.println(getCharge(9)) //when value is less than 10
System.out.println(getCharge(90)) //when value is less than 100
System.out.println(getCharge(900)) //when value is less than 1000
System.out.println(getCharge(5000)) //when value is greater than 1000
}输出:
1
9
50
90发布于 2022-11-04 02:12:50
这个问题要求嵌套if语句,因此这段代码可能更好:
public double getCharge(int check_amount) {
if (check_amount < 1000){
if (check_amount < 100){
if (check_amount <10){
return 1;
}else {
return 0.1*check_amount;
}
} else {
return 5 + 0.05*check_amount;
}
} else {
return 40 + 0.01*check_amount;
}
}这具有与我之前发布的代码相同的功能,但根据请求作为嵌套的if- but语句。
https://stackoverflow.com/questions/74311231
复制相似问题