HAS TO BE DONE IN C++
Create a program that finds shortest flight routes between two cities . If a route is found the program outputs the list of connecting cities. (Think of these as flight stops at corresponding airports.) Otherwise the program indicates that no route was found. The sense in which a route is shortest is simply having the least number of connections. That means we can use the breadth first search algorithm shown in class. (Using Dijkstra's algorithm would be overkill.)
To create the graph, your program will read in the file connections.txt. Be careful when creating the lookup table for city names, because some cities with a From: entry do not have any To: entry (you can fly out but not in). It's also possible that a city appearing under To: has no From: entry (can fly in but not out). Be prepared for some wacky results since the connections in the file have no relation to actual connections between real airports.
To select start and destination cities, the user can type in a string, normally the beginning of a city name, and the program will list matching cities, from which the user can select via a number. The program should only accept strings that are of length two or more as input. To find matches it simply looks for the user's string as a substring of city names in the lookup table. Ignore case when looking for substrings.
Upload your source file(s) and a text file with copied output from a sample run of the program with multiple searches.
The output below is from a sample solution. Your program output should be similar. (Not necessarily identical in format). For the city numbers you can use the indexes in your lookup table (as is done below) or number them 1, 2, 3 etc. (more work but user friendly).
Output:
Reading cities from file...
...Finished...
--------------------------------------------------------------------
Please enter a departing city name or "quit" to exit: S
Please use at least two characters.
Please enter a departing city name or "quit" to exit: Sa
30: Casablanca, Morocco
53: Hong Kong, SAR
58: Jeddah, Saudi Arabia
73: Lusaka, Zambia
92: Osaka, Japan
104: Riyadh, Saudi Arabia
106: Saint Louis, United States
107: Saint Petersburg, Russia
108: San Francisco, United States
109: San Jose, Costa Rica
110: San Juan, Puerto Rico
111: Santiago, Chile
112: Santo Domingo, Dominican Republic
113: Sao Paulo, Brazil
133: Warsaw, Poland
137: Winston-Salem, United States
Please select a departing city by entering a number from the list above: 108
Selected Departure: 108: San Francisco, United States
Please enter a destination city or "quit" to exit: los angeles
72: Los Angeles, United States
Please select a destination by entering a number from the list above: 72
Selected Destination: 72: Los Angeles, United States
Shortest Route:
San Francisco, United States --> Jeddah, Saudi Arabia --> Montevideo, Uruguay --> Seoul, South Korea --> Seattle, United States --> Los Angeles, United States
Make another search? ("yes" or "no"): yes
Please enter a departing city name or "quit" to exit: new
9: Auckland, New Zealand
90: New Delhi, India
91: New York City, United States
135: Wellington, New Zealand
Please select a departing city by entering a number from the list above: 91
Selected Departure: 91: New York City, United States
Please enter a destination city or "quit" to exit: Paris
96: Paris, France
Please select a destination by entering a number from the list above: 96
Selected Destination: 96: Paris, France
Shortest Route:
New York City, United States --> Abidjan, Cote d'Ivoire --> Dakar, Senegal --> Chennai, India --> Paris, France
Make another search? ("yes" or "no"): yes
Hi There
I've excellent programming and development skills and knowledge. I can provide an efficient,
perfect, well documented development of your Programming and Computer project according
to 100% accuracy and requirements, with dedicated support.
Thanks
Farah Saif
I am a competitive programmer and I have done my graduation from an IIT college so I am an expert in algorithms. Plus I have Recently completed GSOC 2018 so you can expect formatted and understandable code from me.
I CAN WORK NOW AS TRAIL FOR YOU FIRST
LETS START NOW
I am ready to start your project , just start chat and we can discuss in detail , i assure you that you will be provided quality work. Waiting for your kind reply...