Final answer:
A C++ program is provided that prompts for a Social Security Number and checks its validity against the required format. The program ensures the correct format by checking the length, dash positions, and digit characters.
Step-by-step explanation:
The C++ program below prompts the user to enter a Social Security Number (SSN) and checks its validity according to the specified format (ddd-dd-dddd). If the SSN does not conform to the format, it notifies the user that the input is invalid.
#include
#include
#include
using namespace std;
int main() {
string ssn;
cout << "Enter SSN (ddd-dd-dddd): ";
getline(cin, ssn);
bool isValid = true;
if(ssn.length() != 11)
isValid = false;
for(int i = 0; i < ssn.length() && isValid; i++) {
if((i == 3 || i == 6) && ssn[i] != '-') {
isValid = false;
} else if (i != 3 && i != 6 && !isdigit(ssn[i])) {
isValid = false;
}
}
if(isValid)
cout << "The SSN is valid." << endl;
else
cout << "Invalid SSN format!" << endl;
return 0;
}
When run, the program asks for the SSN input, checks for the correct length, the placement of dashes, and whether all other characters are digits.