The Software Development Company requests you add user error exception handling capabilities to the C# program.
For this week's assignment, build on the Week Three Individual Assignment, "Branching in C#," by storing each software developer's information in a C# data structure object record. The C# data structure object record must include the type of employee as either W2or 1099 using the following requirements:
- The 1099 software development employees' records always have zero tax amounts
- The program properly handles and informs the user about errors on user input
- The program allows the user to reenter and input value that was invalid, until the user succeeds in entering a valid value.
- The program demonstrates in the code the use of ref arguments
- The program displays on the console all the software developers' data, monthly pay, monthly taxes, annual gross pay, annual taxes, and net pay
Using Visual Studio® and C# programming concepts, write a program to meet the specifications of the company's request. The program should have the following characteristics:
- Compile and Execute without errors
- Meets specifications by displaying on the console a welcome message along with the following information on three software developers:
- Software developer name
- ZIP Code
- Gross monthly pay
- Annual gross pay
- Employee type: W2/1099
- Monthly and annual taxes determined by employee type
- Logic flow is clear, concise, and effective; demonstrates exception handling routines and reference types by catching and displaying user data entry errors and implementing reference types as part of the code
- User inputs and outputs should be clear on screen
- The program code should laid out with appropriate indentation to show program structureIdentifiers logically describe use
- Naming conventions are consistent
- Comments and headers to explain processing that is not obvious
Constraints for assignments in this course: Collect all data and store it as the user enters it. When all the data is collected, display the data and any calculated data on the console. Data displayed on the console must be correctly labelled so that the user will be able to understand what it means. After all data has been displayed, the program will prompt the user to press ENTER to continue, and will allow the program to finish (and the console to close), only after the user has pressed the key to dismiss the program.