In: Computer Science
write in c++ Create a program that uses EXCEPTION HANDLING to deal with an invalid input entry by a user. a. Write a program that prompts a user to enter a length in feet and inches. The length values must be positive integers. b. Calculate and output the equivalent measurement in centimeters 1 inch = 2.54 centimeters c. Write the code to handle the following exceptions: If the user enters a negative number, throw and catch an error that gives the user the appropriate message and request a valid number. Do this until the user enters a valid number If the user enters a character, throw and catch an error that indicates the input stream is invalid. Write code that resets the input stream and request a valid number. Do this until the user enters a valid number d. Output the feet-inch input values to centimeter conversion value
Here is code:
#include <iostream>
#include <limits>
#define CENTIMETER 2.54
using namespace std;
int getInches(int low)
{
int num;
// check if input is valid or not
if (!(cin >> num) || (num <= low))
{
// flush the cin data
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
throw "The number is out of bounds: Try again : ";
}
return num;
}
int main()
{
int inches = 0;
cout << "Enter a length in feet and inches : ";
while (1)
{
try
{
inches = getInches(0);
cout << "Feet-inch input values to centimeter conversion value : " << (inches * CENTIMETER) << endl;
break;
}
catch (const char *str)
{
cout << str;
}
}
// Number validation
return 0;
}
Output: