Area of Triangle, Java

area, java

Solution

`1/2` is being computed in integer arithmetic, so like with all integer division, it's truncated -- in this case, to `0`. Just write `0.5` and you'll be fine.

Problem

I'm trying to build an app which computes the area of a triangle, as per my homework assignment. Not quite sure where I'm going wrong, but I input the lengths of the triangle and would like the proper area displayed according to Heron's formula: `sqrt (s(s-a) (s-b) (s-c))`. All I'm getting for output is `-0.0`. Here is the code: ``` import java.lang.Math; public class Formula { double area; double s; public double findArea(double sideA, double sideB, double sideC) { s = 1/2 * (sideA + sideB + sideC); area = Math.sqrt(s*(s-sideA)*(s-sideB)*(s-sideC)); System.out.println("The area of the triangle is " + area); return area; } } ``` And then I have another file for the main args ``` import java.util.Scanner; public class findTriangleArea { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Formula triangle = new Formula(); double a,b,c; // input triangle lengths a, b, c Scanner inputTriangle = new Scanner(System.in); System.out.println("Please enter triangle side a"); a = inputTriangle.nextDouble(); System.out.println("Please enter triangle side b"); b = inputTriangle.nextDouble(); System.out.println("Please enter triangle side c"); c = inputTriangle.nextDouble(); triangle.findArea(a, b, c); } } ```

Original source