int a = 1; int b = 10; int c = 3; int d = (1/10)*3 System.out.println(d) Result: 0
如何使此计算有效? 向上或向下舍入? 它应该是: (1/10)* 3 = 0.1 * 3 = 0.3 = 0和 (4/10)* 3 = 0.4 * 3 = 1.2 = 1
非常感谢!
答案 0 :(得分:5)
1 / 10
这是整数除法,并且作为整数除法,结果为0。 然后0 * 3 = 0
您可以使用双重文字:
1.0 / 10.0
答案 1 :(得分:1)
1/10
此行返回0.so 0 * 3 = 0.使用 double 而不是 int
答案 2 :(得分:1)
尝试:
int d = (int) (((double)4/10)*3);
答案 3 :(得分:0)
因为a和b都是整数所以输出也是int,这使得1/10为0然后0 * 3 = 0
答案 4 :(得分:0)
您需要使用浮点表示执行计算。然后,您可以将结果转换回整数。
答案 5 :(得分:0)
答案 6 :(得分:0)
这将有效
int a = 1;
int b = 10;
int c = 3;
int d = (1*3/10);
System.out.println(d);