(Solution) IDS 201: | Snapessays.com


(Solution) IDS 201:


See ids201 hw5.pdf201 hw5.pdfHwk1Problem Statement For this assignment, you need to create five classes: Transaction, Account, Savings, Checking, and TestAccount. Note that the Account class is an abstract class (see Chapter 13). It has several concrete methods and one abstract method printMonthlyReport(). The UML class diagram for the first four classes is shown on the last page. The TestAccount class is the main class that uses the first four classes. In the TestAccount class, you are required to write an application (program) that simulates a simple ATM system. There are two types of accounts: Savings account. Minimum monthly balance of at least $1,000 required, pays interest on the ending monthly balance at an annual rate of 3% and charges NO fees unless the ending monthly balance drops below $1,000, which results in a $25 penalty (which is deducted before the interest earned is calculated). Checking account. No minimum monthly balance required, pays NO interest and charges a monthly fee of $3.00. There is a usage fee of $1.00 for every usage of the ATM system. Thus, for every deposit, withdraw, or transfer transaction, a fee of $1.00 is applied to the appropriate account. In case of a transfer transaction, the $1.00 usage fee is applied to the source account and no fee is applied to the destination account. For simplicity, assume that Mr. John Doe has an initial balance of $1,000.00 and $500.00 in his Savings and Checking accounts, respectively. Also, assume that the customer has signed onto the ATM machine and has provided a password that the system validated. After creating the Savings and Checking accounts for Mr. John Doe, the program should begin with a Main menu, which asks the user to select the type of transaction to process: D to make a deposit, W to withdraw, T to transfer money from one account to another, and Q to quit from the system. If the customer selects D (deposit) or W (withdraw), on the next screen, the program should display an Account menu that lists the available accounts: S for savings account and C for checking account. When the customer selects S (savings) or C (checking), the program then should ask the customer to enter the amount of transaction (deposit or withdraw amount). If the amount is negative, the program should display an appropriate error message to the customer and let him/her reenter the amount. Deposit amounts should be added to the appropriate account (Savings or Checking) balance while withdrawal amounts should be deducted from the appropriate account balance. Note that if the withdrawal amount is greater than the current balance, an insufficient funds message should be displayed to the customer, the withdrawal transaction should be canceled, and let the customer reenter the amount to withdraw. If the customer selects T (transfer), on the next screen, the program should display an Account menu that lists the available source accounts to transfer from: S for savings account and C for checking account. After the customer selects S (savings) or C (checking), on the next screen, the program should display an Account menu again that lists the available destination accounts to transfer to: S for savings account and C for checking account. If the destination account is the same as the source account, your program should display an appropriate error message and then redisplay the Account menu that lists the available source accounts to transfer from. Otherwise, the program then should ask the customer to enter the amount to transfer. If the amount is negative or is greater than the available balance in the source account, the program should display an appropriate message and let the customer reenter the amount to transfer again. If there are enough funds to transfer, this amount should be deducted from the source account and then the same amount is added to the destination account. The program should keep track each transaction for each account. If the user selects Quit, the program should display the monthly reports for both saving and checking accounts. When the user presses the ENTER key, the program terminates. Assume that when the user selects Quit, one month has elapsed since the beginning of the transactions. Additional Specifications If the user selects an “invalid” menu selection, display an appropriate error message, pause program execution until the user presses the ENTER key, and then redisplay the menu selection. Allow the user to enter either upper- or lower-case letters for making menu selection. There are an unknown number of transactions (deposits, withdrawals, and transfers) and their “order/sequence of occurrence” is also unknown. The program should return the user to the main menu after each transaction (deposit, withdrawal, and transfer) or after each canceled transaction.IDS 201: Introduction to Business Programming - Spring 2015

 

Assignment Policy

 

The focus of the homework assignments is to provide you with an opportunity to apply the software

 

development concepts, tools, design guidelines, and techniques described in the text and presented in

 

class. Your performance on the assignments also serves as an indicator of how well you understand the

 

material. You are encouraged to study in groups; however, you should make every effort to hand in work

 

that represents your own efforts.

 

Please keep in mind that software development starts with a clear understanding of what and how the

 

software is to perform. Thus, it is your responsibility to make sure you have a clear understanding of what

 

is expected. Once you have a clear understanding of what and how the software should perform, you

 

should develop and test the “logic” or the algorithm. If you develop and test the algorithm first, then

 

writing the code becomes merely a task of translation!

 

For each assignment, you must submit a compressed (zip) file of the project’s folder, which includes its

 

subfolders and source code file(s), via the Blackboard.

 

Please note:

 

a.

 

You are expected to exercise good programming style and practices (i.e., follow the design

 

guidelines, use meaningful variable names, indentation, blank lines and blank spaces to

 

improve readability, and comments).

 

b.

 

When you create a project for an assignment, you should name it in the following manner:

 

your

 

netid

 

followed by the assignment’s number.

 

For example: if your email address is

 

[email protected]

 

, the project names should be AbcHwk1 for assignment #1,

 

AbcHwk2 for assignment #2, etc.

 

Assignment Grading Criteria

 

Each assignment is worth a total of 100 points. The grading criteria and point values are described below.

 

A

 

SOURCE CODE (35 points)

 

1.

 

Programmer named variables and functions that are meaningless or confusing (to the

 

grader). Deduct maximum 9 points.

 

2.

 

Did not use an appropriate data type for each variable (i.e., use String instead of integer

 

data type for a whole number). Deduct maximum 10 points.

 

3.

 

Insufficient use of blank lines, blank spaces, or indentation. Deduct maximum 8 points.

 

4.

 

Insufficient use of comments. Deduct maximum 8 points.

 

B

 

PROGRAM EXECUTION (65 points)

 

1.

 

Source code file does

 

not

 

compile successfully because of syntax errors and thus cannot

 

be executed. Deduct maximum 65 points.

 

2.

 

Source code file compiles successfully, but the program, when executed, does not

 

perform as specified. Deduct maximum 65 points. You receive partial credits for the

 

correct parts.

 


Solution details:
STATUS
Answered
QUALITY
Approved
ANSWER RATING

This question was answered on: May 23, 2022

Solution~00021147718975.zip (25.37 KB)


This attachment is locked

Our expert Writers have done this assignment before, you can reorder for a fresh, original and plagiarism-free copy and it will be redone much faster (Deadline assured. Flexible pricing. TurnItIn Report provided)

Pay using PayPal (No PayPal account Required) or your credit card . All your purchases are securely protected by .
SiteLock

About this Question

STATUS

Answered

QUALITY

Approved

DATE ANSWERED

May 23, 2022

EXPERT

Tutor

ANSWER RATING

GET INSTANT HELP

We have top-notch tutors who can do your essay/homework for you at a reasonable cost and then you can simply use that essay as a template to build your own arguments.

You can also use these solutions:

  • ■ As a reference for in-depth understanding of the subject.
  • ■ As a source of ideas / reasoning for your own research (if properly referenced)
  • ■ For editing and paraphrasing.

This we believe is a better way of understanding a problem and makes use of the efficiency of time of the student.

Get Free Price Quote