Question: Program in C: In this program you will be converting measurements from one unit to another. Restrictions No global variables may be used Your main
Program in C:
In this program you will be converting measurements from one unit to another.
Restrictions
- No global variables may be used
- Your main function may only declare variables and call other functions
Temperatures
| From | Farenheit | Celsius | Kelvin |
| Farenheit(F) | F | (F - 32) * 5/9 | (F-32)*5/9+273.15 |
| Celsius(C | (C * 9/5) +32 | C | C + 273.15 |
| Kelvin(K) | (K - 273.15) * 9/5 + 32 | K -273.15 | K |
Distances
| From | Inches | Feet | Yards | Miles |
| Inches(I) | I | I / 12 | I / 36 | I / 63360 |
| Feet(F) | F * 12 | F | F / 3 | F / 5280 |
| Yards(Y) | Y* 36 | Y * 3 | Y | Y / 1760 |
| Miles(M) | M * 63360 | M * 5280 | M * 1760 | M |
Requirements
- Users should be able to enter both upper and lower case letters for units
- Any amount of white space should be allowed inputs
- The program must compile with both -Wall and -Werror options enabled
- Submit only the files requested
- Use doubles to store real numbers
- Print all doubles to 2 decimal points unless stated otherwise
Assumptions
- Input is NOT guaranteed to be valid
- If invalid input is received, your program should report it and terminate
- Wait until we cover how to handle invalid input in class before dealing with this part of the problem
Tips
- This problem is very large and you will want to break it down into many functions to help manage complexity
- When reading in a character don't forget to put a space in front of the %c in scanf
- You can save yourself a bit of work by always converting to a common unit and then converting to the desired unit
- For example, always converting yards first and then from yards to the desired unit
- The exit function in stdlib.h can be very helpful for ending a program early. If you use it make sure to do exit(0)
Examples
Example 1
Pick the type of conversion that you would like to do. T or t for temperature D or d for distance Enter your choice: t Enter the temperature followed by its suffix (F, C, or K): 0K Enter the new unit type (F, C, or K): C 0.00K is -273.15C
Example 2
Pick the type of conversion that you would like to do. T or t for temperature D or d for distance Enter your choice: d Enter the distance followed by its suffix (I,F,Y,M): 5 y Enter the new unit type (I,F,Y,M): i 5.00Y is 180.00I
Example 3
Pick the type of conversion that you would like to do. T or t for temperature D or d for distance Enter your choice: J Unknown conversion type J chosen. Ending program.
Example 4
Pick the type of conversion that you would like to do. T or t for temperature D or d for distance Enter your choice: 10 Invalid formatting. Ending program.
Example 5
Pick the type of conversion that you would like to do. T or t for temperature D or d for distance Enter your choice: t Enter the temperature followed by its suffix (F, C, or K): 42 G G is not a valid temperature type. Ending program.
Example 6
Pick the type of conversion that you would like to do. T or t for temperature D or d for distance Enter your choice: t Enter the temperature followed by its suffix (F, C, or K): 420 Blaze It Invalid formatting. Ending program.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
