[SOLVED] CS160 Program 7

30.00 $

Category: Tags: , ,
Click Category Button to View Your Next Assignment | Homework

You will receive the following solution file(s) instantly after successful payment:

zip file icon program07-tulf3x.zip (34.6 KB)
Assignment Instructions Updated Recently? Submit Below and we will provide new Solution!
Submit New Instructions
🔒 Securely Powered by:
Secure Checkout
5/5 - (2 votes)

Objectives

Work with files Work with functions

Assignment

This program will display a very basic handling of transactions for a checking account. This program will read in a data file with all the past transactions. Use FileUtil.selectOpenFile or input() to ask for a file name from the user. The format of the file will be very basic: a single letter which indicates the type of transaction (‘B’ for beginning balance, ‘C’ for a check, ‘D’ for a deposit, or ‘W’ for a withdrawal), a date (as a string in the format of MM/DD), and an amount (floating point value). The transaction type may be upper or lower case. Using the appropriate string methods which make this a non-issue. The first line of the data MUST BE the beginning balance. The remaining lines may be for any type of transaction other than specifying the beginning balance. All lines will have three values, separated by commas, and in the order specified. A sample data file might be:

B,03/01,1000.00
C 03/02,100.00
C,03/03,9.00
W,03/04,20.00
C,03/05,50.00

You do not need to write a program to create the data file, you can use any text editor. You can write a program to create the file if you want, but you don’t need to turn it, or more to the point, don’t turn it in.

After reading each line, break it up into its individual pieces of information. The split() method would likely be the easiest way to do so, but you can use the find() or index() methods as well.

Write the information from the data file to the display in a neat, column-aligned format with an updated balance on each line. Expand the single letter for the transaction type into complete text, as demonstrated below. Calculate the new balance from the information provided in each line, adding the amount to the balance for a deposit and subtracting the amount from the balance for checks and withdrawals. Make sure each dollar amount has exactly 2 places after the decimal point. You do not need to do anything with the date read from the file, just print it out as it was read from the file. Also include today’s date at the top of the table. We accessed todays’ date in class in the CalcAge example.

This is a very limited program, so there are limited opportunities to write functions, but one function that must be written is:
def transactionType (transLetter):

This function accepts as an argument the transaction letter (“B”, “C”, “D”, or “W”) and returns the full transaction type (“Beginning Balance”, “Check”, “Deposit”, or “Withdrawal”).

All of the code for the main program must be a function named main(). The only line of executable code that should not be in a function is to call main() as the last line of the program.

A sample of the output, using the data from above, might be:

Checkbook balance as of 03/06
03/01  Beginning Balance
03/02  Check
03/03  Check
03/04  Withdrawal

03/05 Check

100.00
  9.00
 20.00
 50.00
1000.00
 900.00
 891.00
 871.00
 821.00
  • program07-tulf3x.zip