View the step-by-step solution to:

CS 140-002 Intro to Computing 1 Spring 2016 Project 3 - methods Project3.java file uploaded to Moodle by Fri, Mar 25, 2016, 11: methods, file I/O,...

The Lancre coven has started doing foreign consulting. Upon request, one of the witches hops on her broomstick and flies to one of the neighboring countries that require their services. Granny, Nanny and Magrat charge a nominal fee per visit - $10, and 2 cents per mile round trip. They service 4 foreign locations, the distances to which are shown in the following table (left below):

Foreign location

Distance (in miles)

Uberwald

97

Pseudopolis

262

Quirm

425

AnkhMorpork

500

The witches keep a log of foreign trips in a text file named coven_consulting.txt (can be downloaded from Moodle), the format and contents of which is shown in the tables to the right:

All names in the file are spelled correctly. Numbers denote the beginning of travel log data for another month.

On Moodle you will also find a file named Project3.java, which already contains some code. Download this file and finish implementing it according to the instructions.

Your program asks the user to enter the name of a city. The program keeps asking for input until the user enters a valid city. Account for errors in capitalization, i.e. QUIrm and quirm and qUirm are all valid inputs.

The program takes the user input and the input file and prints a short breakdown of revenue for the given city for the months that are in the travel log. Your solution is a general solution - it must work with any of the 4 cities and for any given number of months that may be in the input file.

Project3.java contains methods that encapsulate different functionality. It is written to compile, so it includes some dummy return statements that are only there to make the file compile correctly. Alter the return statements to suit your needs. Do NOT alter the method declarations. I suggest you consider implementing the methods in the following order:

Format of coven_consulting.txt

month number

location

location

month number

location

location

(arbitrary number of months, locations)

The contents of coven_consulting.txt

1

Uberwald

Uberwald

AnkhMorpork

AnkhMorpork

Uberwald

Quirm

Pseudopolis

Uberwald

Quirm

2

AnkhMorpork

Uberwald

Pseudopolis

Uberwald

Uberwald

AnkhMorpork

Uberwald

3

Uberwald

AnkhMorpork

Uberwald

Uberwald

Quirm

Quirm

  • main – entry point of your program, already implemented, do NOT alter it.
  • getDistance ­– take the String passed to the method and use it to determine the distance to it from Lancre (Hint: switch). Ignore errors in capitalization and white space errors (Hint: ignore case and trim your input). Return the distance.
  • checkValidCity ­– take the String passed to the method and check if it’s one of the 4 that the witches fly to, or not. Ignore errors in capitalization and white space errors (Hint: ignore case and trim your input). Return true or false accordingly.
  • getCity – the method takes one word user input (from the keyboard, Hint: Scanner) and continues asking the user to correct himself until the city is valid (Hint: loop). Validate the city by calling checkValidCity. Pass the value of the city back to the method, which invokes getCity.

printReport – invoke getCity to retrieve the user input for the city. Once you have the city, get the distance to it by calling getDistance. Try to open the file (Hint: try-catch, file may not exist, place the file in the right place). Read the file (Hint: you don’t know how many lines are in it, so peak into it before you read; find where months begin – the month starts with a number, not a String, so peak for integers; don’t forget to move the cursor to the next line when you encounter an integer). Keep track of total trips for each month, and all months together (Hint: running totals). Print out a charges for the chosen destination for each month (Hint: a charge for each trip is made up of 2 cents charged for each mile of the total miles for the trip (both directions) plus a $10 consulting fee) as well as a grand total for the whole period. Format your output (Hint: assume number of trips can be in the double digits, consulting fees in the triple digits, mileage and total revenue can have up to 4 digits plus 2 digits precision)

CS 140-002 Intro to Computing 1 Spring 2016 Project 3 – methods Project3.java file uploaded to Moodle by Fri, Mar 25, 2016, 11:55 pm Concepts covered in this assignment: methods, file I/O, looping, selection, formatted output The Lancre coven has started doing foreign consulting. Upon request, one of the witches hops on her broomstick and flies to one of the neighboring countries that require their services. Granny, Nanny and Magrat charge a nominal fee per visit - $10, and 2 cents per mile round trip. They service 4 foreign locations, the distances to which are shown in the following table (left below): Foreign location Distance (in miles) Uberwald 97 Pseudopolis 262 Quirm 425 AnkhMorpork 500 The witches keep a log of foreign trips in a text file named coven_consulting.txt (can be downloaded from Moodle), the format and contents of which is shown in the tables to the right: All names in the file are spelled correctly. Numbers denote the beginning of travel log data for another month. On Moodle you will also find a file named Project3.java , which already contains some code. Download this file and finish implementing it according to the instructions. Your program asks the user to enter the name of a city. The program keeps asking for input until the user enters a valid city. Account for errors in capitalization, i.e. QUIrm and quirm and qUirm are all valid inputs. The program takes the user input and the input file and prints a short breakdown of revenue for the given city for the months that are in the travel log. Your solution is a general solution - it must work with any of the 4 cities and for any given number of months that may be in the input file. Project3.java contains methods that encapsulate different functionality. It is written to compile, so it includes some dummy return statements that are only there to make the file compile correctly. Alter the return statements to suit your needs. Do NOT alter the method declarations. I suggest you consider implementing the methods in the following order: Format of coven_consulting.txt month number location location month number location location (arbitrary number of months, locations) The contents of coven_consulting.txt 1 Uberwald Uberwald AnkhMorpork AnkhMorpork Uberwald Quirm Pseudopolis Uberwald Quirm 2 AnkhMorpork Uberwald Pseudopolis Uberwald Uberwald AnkhMorpork Uberwald 3 Uberwald AnkhMorpork Uberwald Uberwald Quirm Quirm main – entry point of your program, already implemented, do NOT alter it. getDistance – take the String passed to the method and use it to determine the distance to it from Lancre (Hint: switch). Ignore errors in capitalization and white space errors (Hint: ignore case and trim your input). Return the distance. checkValidCity – take the String passed to the method and check if it’s one of the 4 that the witches fly to, or not. Ignore errors in capitalization and white space errors (Hint: ignore case and trim your input). Return true or false accordingly.
Background image of page 1
getCity – the method takes one word user input (from the keyboard, Hint: Scanner) and continues asking the user to correct himself until the city is valid (Hint: loop). Validate the city by calling checkValidCity . Pass the value of the city back to the method, which invokes getCity. printReport – invoke getCity to retrieve the user input for the city. Once you have the city, get the distance to it by calling getDistance . Try to open the file (Hint: try-catch, file may not exist, place the file in the right place). Read the file (Hint: you don’t know how many lines are in it, so peak into it before you read; find where months begin – the month starts with a number, not a String, so peak for integers; don’t forget to move the cursor to the next line when you encounter an integer). Keep track of total trips for each month, and all months together (Hint: running totals). Print out a charges for the chosen destination for each month (Hint: a charge for each trip is made up of 2 cents charged for each mile of the total miles for the trip (both directions) plus a $10 consulting fee) as well as a grand total for the whole period. Format your output (Hint: assume number of trips can be in the double digits, consulting fees in the triple digits, mileage and total revenue can have up to 4 digits plus 2 digits precision) Given the contents of coven_consulting.txt above, and the following keyboard inputs, your output MUST be formatted like below and result in the following values: You program should work with any file formatted according to the description. To test your program, you might want to change the input file around and see if the output it creates is the output you expect. Your program will be tested with an input file of different length and contents. Submit your Project3.java to Moodle by the deadline. Follow naming conventions (camelCase) and formatting style (indentation). Comment your code.
Background image of page 2

Top Answer

View the full answer
CS140-1.zip - Preview not available

Sign up to view the full answer

Why Join Course Hero?

Course Hero has all the homework and study help you need to succeed! We’ve got course-specific notes, study guides, and practice tests along with expert tutors.

-

Educational Resources
  • -

    Study Documents

    Find the best study resources around, tagged to your specific courses. Share your own to gain free Course Hero access.

    Browse Documents
  • -

    Question & Answers

    Get one-on-one homework help from our expert tutors—available online 24/7. Ask your own questions or browse existing Q&A threads. Satisfaction guaranteed!

    Ask a Question
Ask a homework question - tutors are online