Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用三角形面积=1/2*基底*高度公式的Java程序_Java - Fatal编程技术网

使用三角形面积=1/2*基底*高度公式的Java程序

使用三角形面积=1/2*基底*高度公式的Java程序,java,Java,有人知道如何在传统java中使用此公式计算三角形的面积,而无需在公式中更改或添加任何内容吗 面积=1/2*底部*高度 如果我修改公式如下: 面积= 1.0f/2*基准高度或1/2.0f基准高度或0.5*基准高度 …这肯定会给我我想要的 但我要做的是,按原样使用公式面积=1/2*base*height。有人告诉我他们的方法是一种方法,但我似乎无法跟随。 如果这是我的程序: 公共课区{ public static void main (String[] args) { // If

有人知道如何在传统java中使用此公式计算三角形的面积,而无需在公式中更改或添加任何内容吗

面积=1/2*底部*高度

如果我修改公式如下:

面积= 1.0f/2*基准高度或1/2.0f基准高度或0.5*基准高度

…这肯定会给我我想要的

但我要做的是,按原样使用公式面积=1/2*base*height。有人告诉我他们的方法是一种方法,但我似乎无法跟随。 如果这是我的程序:

公共课区{

public static void main (String[] args) {

         // If this is the given value
         int base = 5;
         int height = 5;
         float Area = 0;

         //Using this formula without altering or adding anything on it
         Area = 1/2*base*height;


         System.out.println("Area = " +Area);
}
}

这将给出:

面积=0.0

*我将如何获得:


Area=12.5

使用double。
int
int
数学家运算,其结果在java中始终为int

     double base = 5;
     double height = 5;
     double Area = 0;

     Area = 1.0/2*base*height;

你的问题是整数运算。具体来说,请考虑<代码> 1/2 >代码>。因为我们有int/int,所以结果必须是int(然后可以转换为double、float等)。但是,由于分数不存在于
int
类型中,因此我们得到
1/2=0
。因此,您拥有
1/2*base*height=0*base*height=0

尝试
0.5*基准*高度
,或
1.0/2.0*基准*高度
,或
(浮动)1/(浮动)2*基准*高度


特别要注意的是,在
(float)(1/2)
中,强制转换发生得太晚了-您将得到
0.0

请使用double作为您的数据类型。
1
2
是整数,因此
1/2
使用整数除法,它的答案是整数
0
。如果您想使用余数,则它将是
1%2
,这将是
1
。所以它被称为a型演员哈哈,非常感谢男人们。你的帮助很大!