gpt4 book ai didi

即使经过数学处理,Java 仍不断返回变量的值?

转载 作者:行者123 更新时间:2023-12-01 23:28:35 25 4
gpt4 key购买 nike

即使在 tprice = 75 + (2/10) * distance 发生之后,它仍然输入最小值 26。该程序不允许包含 if 语句,因此 Math.Min(tprice, cprice);希望这是足够的信息。

class UserCalc {

public static void main(String [] args) {
int cPrice, tPrice, distance, selfCont, minValue;
double refund;

Scanner scanner = new Scanner(System.in);

System.out.println("Please enter the distance by car");
distance = scanner.nextInt();

System.out.println("Please enter the self contribution");
selfCont = scanner.nextInt();
scanner.nextLine();

tPrice = 75 + (2/10) * distance;
cPrice = 26 + (7/10) * distance;

minValue = Math.min(tPrice, cPrice);
System.out.println(minValue);

refund = minValue * (100 - selfCont)/100;
}
}

最佳答案

tPrice = 75 + (2/10) * distance;
cPrice = 26 + (7/10) * distance;

2 / 10被解释为整数,不能表示逗号后面的值。这意味着2 / 10 = 0.2 = 0 .

结果为tPrice = 75cPrice = 26 .

使用2.0 / 10表明您正在使用 double相反,或 2.0f / 10使用 float 。

您将结果存储在 float 中,但这只是在整数操作完成之后。

关于即使经过数学处理,Java 仍不断返回变量的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19658443/

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