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 W2 or 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 out or ref arguments
- The program displays on the console all the software developers’ data, name, ZIP code, payee type, monthly gross pay, monthly taxes, monthly net pay, annual gross pay, annual taxes, and annual 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
- Monthly and annual gross pay
- Employee type: W2/1099
- Monthly and annual taxes determined by employee type
- Monthly and annual net pay
- 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 (name, ZIP, monthly gross pay, employee type) 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.
Each payee’s report shall be displayed as follows: identifying information (name, ZIP, employee type) first, followed by monthly amounts, followed by annual amounts.
After all payees’ data has been displayed, the program shall prompt the user to press ENTER to continue, and shall allow the program to finish (and the console to close), only after the user has pressed the key to dismiss the program.