0

我正在制作一个似乎不起作用的 BMI 计算器。

我一直得到 0 作为我的答案,而它应该是 15.7

有人可以告诉我我在这里做错了什么吗?

public class ass10 {

    public static void main(String[] args) {
    bmi(223,100);
    }
    public static bmi(int w, int h){
        double result;
        result = (w/(h*h))*703
        System.out.println(result)             
    }

}
4

1 回答 1

8

在 Java 中,如果你取一个 int/int,你会得到一个 int,四舍五入到较小的数字 ( 99/100=0)。您想将其转换为浮点数,或者更好的是双精度数。

public static void bmi(int w, int h){
    double result;
    result = ((double)w/(h*h))*703;
    System.out.println(result);         
}

我还为您修复了 2 个丢失的分号;-) 如果没有返回类型,您的函数将无法工作,因此我将其设置为 void。

于 2012-11-25T11:03:34.407 回答