Problem:
Triangle

For given two sides of a triangle a and b and the angle C between them, calculate the following properties:

S: Area of the triangle

L: The length of the circumference of the triangle

h: The height of the triangle with side a as a bottom edge

Input

The length of a, the length of b and the angle C are given in integers.

Output

Print S, L and h in a line respectively. The output should not contain an absolute error greater than 10-4.

Sample Input

4 3 90

Sample Output

6.00000000
12.00000000
3.00000000

Solution in JAVA (judge verdict: Accepted)

import java.util.*;
import java.lang.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Integer a = sc.nextInt();
        Integer b = sc.nextInt();
        Integer c = sc.nextInt();
        Triangle triangle = new Triangle();
 
        System.out.printf("%f",triangle.triangleArea(a,b,c));
        System.out.println();
        System.out.printf("%f", triangle.triangleCircumference(a,b,c));
        System.out.println();
        System.out.printf("%f", triangle.triangleHeight(a,b,c));
    }
}
class Triangle{
    private int a;
    private int b;
    private int angle;
    
    public Triangle(){
        this.a = a;
        this.b = b;
        this.angle = angle;
    }
    public static double triangleArea(int a, int b,int angle){
        return (double)a * b * Math.sin(Math.toRadians(angle))/ 2;
    }
    public static double triangleCircumference(int a, int b, int angle){
        return(double)(a + b + Math.sqrt(Math.pow(a,2) + Math.pow(b,2) - 2 * a * b * Math.cos(Math.toRadians(angle))));
    }
    public static double triangleHeight(int a, int b,int angle){
        return (double) b * Math.sin(Math.toRadians(angle));
    }
}