For this assignment, you are to write two equivalent programs - one in C# and one in Python. When writing your code, you should utilize features/data structures in C# and Python that facilitate your coding.
The programs will process A datafile - zipcodes.txt - contains over 85K ines of text - one line for each geographic location in the US territories. There is a header line but all other lines are tab-separated.
The fields, left to right, are:
- Zipcode type
- Location Type
- World region
- Location text
- Tax returns filed
- Estimated population
- Total wages
- Notes (often empty)
Other data files are also provided:
- states.txt - contains a series of legal state abbreviations, one per line
- zips.txt - contains a series of legal zipcodes, one per line
- cities.txt - contains a series of city names, one per line
Your programs will create the following output files:
- CommonCityNames.txt - contains all the city names that appear in all of the states listed in states.txt. The cities should appear in sorted order and one per line.
- LatLon.txt - For each zip code listed in zips.txt, you will have a corresponding line of output. Each output line will list that zip code’s latitude and longitude (space separated). If the zip code has multiple entries, provide the first one listed in zipcodes.txt.
- CityStates.txt - For each city listed in cities.txt, you will have a corresponding line of output. Each output line will list the states containing that city name in sorted order and space separated. A state should be listed at most once for each city.
- The two geographically most distant zipcodes - space separated
- The zip code with the largest population
- The zip code with the smallest population
- The zip code with the largest per capita wages
- The zip code with the smallest per capita wages
- The city with the largest total population (e.g., Brooklyn, NY).
Clarity and correctness is the primary consideration when writing this code.
Performance is a only secondary concern; however, obviously wasteful approaches should not be used.
Your program will be compiled and tested on ceclnx01 with the following command. There are no command line arguments for this program. You can assume that the appropriate data files are located in the directory where your program is located. You program should create data files with the correct output.