Program to convert compass heading in degrees , C/C++ Programming

Convert compass heading in degrees (0-360 degrees)to compass bearing. A compass bearing consist of three items namely:

a.The direction you face (North or South)
b.An angle between 0 to 90 degrees.
c.The direction you turn before walking (East or West).

For example,to get the compass bearing for a compass heading of 110 degrees,you would first face due south(180 degrees)and then turn 70 degrees East.Therefore,the compass bearing is South 70 degrees East.
Create a C program that will accept a compass heading and display the equivalent compass bearing.

/* Directives */
int main(void)
double heading; /*compass heading in degrees*/
/* Get compass heading */
printf("Enter a Compass Heading: ");
scanf("%lf", &heading);
/* Display equivalent compass bearing */
if (heading < 0.0 || heading > 360.0)
printf("Please Input a Compass Heading between 0 and 360 Degrees.\n", heading);
} while (heading < 0.0 || heading > 360.0);
if(heading <= 90.0)
printf("Compass Bearing: North %.1f Deg East\n", heading);
else if(heading < 180.0)
printf("Compass Bearing: South %.1f Deg East\n", 180 - heading);
else if(heading <= 270.0)
printf("Compass Bearing: South %.1f Deg West\n", heading - 180.0);
else if(heading <360.0)
printf("Compass Bearing: North %.1f Deg West\n", 360.0 - heading);
else if(heading == 360.0)
printf("Compass Bearing: North %.1f Deg East\n", 360.0 - heading);
printf("Please Input a Compass Heading between 0 and 360 Degrees.\n", heading);
/* End Program */

Posted Date: 2/15/2013 6:56:06 AM | Location : United States

Related Discussions:- Program to convert compass heading in degrees , Assignment Help, Ask Question on Program to convert compass heading in degrees , Get Answer, Expert's Help, Program to convert compass heading in degrees Discussions

Write discussion on Program to convert compass heading in degrees
Your posts are moderated
Related Questions
Operator Overloading Fundamentals The C language uses the concept of Operator Overloading discreetly. The asterisk (*) is used as multiplication operator as well as indirect

What is Namespace and Explicit container Namespace - Namespaces are used to group entities such as objects, classes and functions under a name. Explicit container.

When declaring a variable of data type pointer, use the * in front of the variable name. These variables hold a memory location (like B45CDF), not an actual value like 30 or A:

Asks the user for an integer. if the number is less than 21, ask them for a number again; repeat this until you get a number bigger than 20. 20 is not an acceptable number. Once yo

Write out pseudocode for a function called "and" that takes two arguments, both booleans, and returns the logical and of the inputs. DO NOT use the logical and operator: instead, w

Write a method (belonging to the TermStructure class) that takes a pointer to an array of bonds and an integer, representing the number of bonds in the array as arguments, and esti

A Padovan string P(n) for a natural number n is defined as: P(0) = ‘X’ P(1) = ‘Y’ P(2) = ‘Z’ P(n) = P(n-2) + P(n-3), n>2 where + denotes string concatenation. For a string of t

In this problem you are given a board in which some of the elements are placed as shown in diagram below. Each element represents a color. Fill the other elements in the board, suc

This problem familiarizes you with using random numbers in C++. The program is to compute a good approximation of p using a simulation method called "Monte Carlo". The following fi