/*************************************************

On a distant wall, you sight a mark of known
height at angle theta1 from the ground.  You sight
the top of the building sights at angle theta2
from the ground.  Write a program that takes in
these two angles in degrees and the height of the
mark in feet & inches (e.g. 6'4") and returns the
height of the building in feet and inches (no
fractions or decimals).  If H is the height of the
known mark, then the building height is given by:

                          tan(theta2)
    Building height = H * -----------
                          tan(theta1)

*************************************************/
#include <stdio.h>
#include <math.h>

int getinches();
double deg2rad(double angle);
void writeinches(int total_inches);

int main() {
  // Get height in inches
  printf("Height of mark? ");
  fflush(stdout);
  int height = getinches();

  // Get angles theta1 & theta2 in degrees
  double theta1;
  printf("Angle 1? ");
  fflush(stdout);
  scanf(" %lg", &theta1);

  double theta2;
  printf("Angle 2? ");
  fflush(stdout);
  scanf(" %lg", &theta2);

  // Calculate Building Height in inches
  double T1 = deg2rad(theta1);
  double T2 = deg2rad(theta2);
  int BH = height*tan(T2)/tan(T1);

  // Write out building height
  printf("Building height is ");
  writeinches(BH);
  printf("\n");

  return 0;
}

/********************************
 ** Read distance in x'y" format
 ** and return the dstance in
 ** inches.
 ********************************/
int getinches() {
  int feet;
  int inches;
  scanf(" %d' %d\"", &feet, &inches);
  return 12*feet + inches;
}

/********************************
 ** convert angle in degrees to
 ** angle in radians
 ********************************/
double deg2rad(double angle) {
  return angle/180*M_PI;
}

/********************************
 ** Write inches to screen in
 ** y'x" format
 ********************************/
void writeinches(int total_inches) {
  int feet = total_inches/12;
  int inches = total_inches % 12;
  printf("%i' %i\"", feet, inches);
}