Things
to know and remember
a.
Workspace is folder. Create the Workspace on the
Desktop or your H: drive
b. Project is a
subfolder inside a Workspace
c. Inside every
PROJECT folder, you should have src and bin subfolders
d.
No partial points will be given unless mentioned.
Workspace: PA2
Project name: ProgAssignment2
Problem
1 (35 marks)
Deductions
Descriptive
variable names: -1 for each variable (if not followed)
Proper
indentation: -3 (if not followed)
Wrong classname:
-1
Class name: MovieRentApp
Start date: March 17, 2020(or immediately after Programming
Assignment #1)
Deadline: April 2 (11:59 pm)
# of developers: 1 - 2 students (max)
Application: Write a console-based
that would keep track of the movies rented.
Additional requirements
a)
Working Menu 1 mark
1.
Developer(s)
2.
Search
a.
All Available movies
b.
By genre (e.g. Adventure, Horror, etc...)
c.
By title
3.
Rent
4.
Return
5.
Earnings
6.
Exit
b)
Search feature 4 marks
a.
Case insensitive (e.g. A = a)
b.
2a - shows all the movies that are currently
available (not rented)
c.
2b – ask the user for the genre then search and
display all the available movies under that category
d.
2c – ask the user for the title of the movie, then
search and display the information (is it currently available? How much to rent
the movie?)
c)
Rent 10 marks
a.
Be creative on how you present the data
b.
The user can rent 1 or more movies (that are
available)
c.
Display on the console the movies rented by the user,
rent fee for each, and total
d.
Save to a text file the following information
i. Date
ii. Time
iii. User’s name (you
need to ask the user)
iv. Rent fee (note:
Not all movies have the same rent fee)
v. Total
e.
There’s only 1 file that would store ALL the
transactions. So, you need to think of a good format on how the data is stored.
f.
Movie_data.csv contains 20 movies (do not save the
transactions here)
d)
Return 5 marks
a.
Users can return the movies the rented
i. If a user borrowed
5 movies, it doesn’t mean that the user would return all 5 movies on the same
day.
ii. You need to update
your records to indicate that what was unavailable is now available
iii. Have a record when
the movies were returned and who (name of the user)
e)
Earnings 5 marks
a.
Display an aggregated report
i. Title of the
movie, how many times it was borrowed, rent, and earnings
ii. Grand total
f)
User friendly and intuitive 5 marks
g) Program design 5
marks
a.
Don’t put all your codes in one method
b.
Create several methods to support the different
functionalities
c.
Much as possible, limit the method to one purpose
Submission
a.
Zip and upload
b.
If there are two developers, only one needs to
submit. Do not forget to indicate the name of the developers in your code.
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
27 | 28 | 29 | 30 | 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |